我正在尝试创建一个数据结构,以满足whisker
包的要求,但似乎无法从我的数据框中创建该结构。假设我有以下数据框:
library(dplyr)
existing_format <-
mtcars %>%
select(carb, gear, cyl) %>%
arrange(carb, gear, cyl) %>%
distinct()
我想从现有格式
转换为以下所需格式(仅显示所需格式
列表的前两个元素):
desired_format <- list(
list(
carb = "1",
gear = list(
list(gear = "3", cyl = list(list(cyl = "4"), list(cyl = "6"))),
list(gear = "4", cyl = list(list(cyl = "4")))
)
),
list(
carb = "2",
gear = list(
list(gear = "3", cyl = list(list(cyl = "8"))),
list(gear = "4", cyl = list(list(cyl = "4"))),
list(gear = "5", cyl = list(list(cyl = "4")))
)
)
)
我尝试过通过按
carb
和gear
进行分组,然后使用tidyr::nest()
创建一个嵌套的df,但是没有什么效果。有些东西告诉我whisker::iteratelist()
或者whisker::rowSplit()
是前进的方向,但是我搞不清楚。
谢谢, Chris