将 JSON 列表展平为数据框
Flatten JSON list into data frame
我有一个包含 143 JSON 个文件 (~30 MB) 的目录,我想将这些文件合并并转换为平面数据框。 (这可能与 有关,但我无法使该解决方案起作用。结果见底部。)
我能够很好地解析单个元素,所以我认为我的绊脚石被下面的 reprex 捕获了:
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
你是这个意思吗?
my_list %>%
map(~ fromJSON(.x)) %>%
bind_rows()
# sometext_lets_pretend_its_JSON
#1 999
#2 999
#3 999
#4 999
#5 999
#6 999
我有一个包含 143 JSON 个文件 (~30 MB) 的目录,我想将这些文件合并并转换为平面数据框。 (这可能与
我能够很好地解析单个元素,所以我认为我的绊脚石被下面的 reprex 捕获了:
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
你是这个意思吗?
my_list %>%
map(~ fromJSON(.x)) %>%
bind_rows()
# sometext_lets_pretend_its_JSON
#1 999
#2 999
#3 999
#4 999
#5 999
#6 999