Свести список JSON во фрейм данных - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть каталог из 143 файлов JSON (~ 30 МБ), которые я хотел бы объединить и преобразовать в плоский фрейм данных.(Это может быть связано с этим вопросом , но я не смог заставить это решение работать. Смотрите дно для результатов.)

Я в состоянии разобрать один элемент просто отлично,так что я думаю, что мой камень преткновения захвачен представлением ниже:

chr <- "[{\"sometext_lets_pretend_its_JSON\":999}]"
my_list <- list(chr, chr, chr, chr, chr, chr)
library(purrr)
my_list %>% 
    map(~ fromJSON(.x))

#[[1]]
#  sometext_lets_pretend_its_JSON
#1                            999
#
#[[2]]
#  sometext_lets_pretend_its_JSON
#1                            999
#
#[[3]]
#  sometext_lets_pretend_its_JSON
#1                            999
#
#[[4]]
#  sometext_lets_pretend_its_JSON
#1                            999
#
#[[5]]
#  sometext_lets_pretend_its_JSON
#1                            999
#
#[[6]]
#  sometext_lets_pretend_its_JSON
#1                            999

Я пытаюсь получить фрейм данных, который показывает все строки из исходных файлов, но плоская версия показывает только первый элемент,Что я тут не так делаю?

my_list %>% 
    map(~ fromJSON(.x)) %>%
    flatten_dfr()
## A tibble: 1 x 1
#  sometext_lets_pretend_its_JSON
#                           <int>
#1                            999

1 Ответ

0 голосов
/ 11 декабря 2018

Вы имеете в виду это?

my_list %>%
    map(~ fromJSON(.x)) %>%
    bind_rows()
#  sometext_lets_pretend_its_JSON
#1                            999
#2                            999
#3                            999
#4                            999
#5                            999
#6                            999
...