JSON 数据框中每组选定列集的摘要列
JSON summary column of a selected set of columns per group in a data frame
我正在尝试生成一个 JSON 数据列来汇总数据框中每组的某些列,但我发现很难以我想要的格式获取它。
我尝试了什么:
library(jsonlite)
library(dplyr)
mtcars <- mtcars[sample(1:nrow(mtcars), 8), ]
mtcars %>%
group_by(cyl) %>%
summarise(x = toJSON(list(wt = wt, am = am, mpg = mpg), auto_unbox = FALSE)))
我得到的:
cyl x
1 4 {"wt":[3.19,1.835,1.935],"am":[0,1,1],"mpg":[24.4,33.9,27.3]}
2 6 {"wt":[2.875],"am":[1],"mpg":[21]}
3 8 {"wt":[4.07,3.78,3.57,3.57],"am":[0,0,1,0],"mpg":[16.4,15.2,15,14.3]}
我想要的:
cyl x
1 4 [{"wt": 2.32, "am": 1, "mpg": 22.8}, {"wt": 3.19, "am": 0, "mpg": 24.4}, {...}, {...}]
2 6 [{....}, {....}]
3 8 [{....}, {....}, {....}]
知道如何到达那里吗?尝试了其他一些东西,但它们都产生相同的 json 个数组。
使用
toJSON(data.frame(wt = wt, am = am, mpg = mpg), auto_unbox = FALSE)
我们可以在 toJSON
外面用 list
换行
library(dplyr)
mtcars %>%
group_by(cyl) %>%
summarise(x = list(toJSON(tibble(wt = wt, am = am, mpg = mpg), auto_unbox = FALSE)))
我正在尝试生成一个 JSON 数据列来汇总数据框中每组的某些列,但我发现很难以我想要的格式获取它。
我尝试了什么:
library(jsonlite)
library(dplyr)
mtcars <- mtcars[sample(1:nrow(mtcars), 8), ]
mtcars %>%
group_by(cyl) %>%
summarise(x = toJSON(list(wt = wt, am = am, mpg = mpg), auto_unbox = FALSE)))
我得到的:
cyl x
1 4 {"wt":[3.19,1.835,1.935],"am":[0,1,1],"mpg":[24.4,33.9,27.3]}
2 6 {"wt":[2.875],"am":[1],"mpg":[21]}
3 8 {"wt":[4.07,3.78,3.57,3.57],"am":[0,0,1,0],"mpg":[16.4,15.2,15,14.3]}
我想要的:
cyl x
1 4 [{"wt": 2.32, "am": 1, "mpg": 22.8}, {"wt": 3.19, "am": 0, "mpg": 24.4}, {...}, {...}]
2 6 [{....}, {....}]
3 8 [{....}, {....}, {....}]
知道如何到达那里吗?尝试了其他一些东西,但它们都产生相同的 json 个数组。
使用
toJSON(data.frame(wt = wt, am = am, mpg = mpg), auto_unbox = FALSE)
我们可以在 toJSON
list
换行
library(dplyr)
mtcars %>%
group_by(cyl) %>%
summarise(x = list(toJSON(tibble(wt = wt, am = am, mpg = mpg), auto_unbox = FALSE)))