如果我在 R 中有一个列表,比如
my list <- list(id = 1, name = list(first = "Jack", last = "Smith"), qualified = T)
,我如何将其转换为 1 行 4 列的 tibble:id、name_first、name_last 和 Qualified?我想要一个不依赖于列名称的解决方案 - 我可以使用 rename
或 select
来实现,但列表名称可能会有所不同,我想要一个更灵活的解决方案。
实现内容的一种可能方法是
my_list %>% purrr::map_depth(1, as_tibble) %>% as_tibble() %>% unnest(name)
,但名称不是我需要的,它仍然取决于知道“名称”列。
提前致谢
不确定这是否是您所需要的。看起来很简单。
data.frame(my_list)
names(data.frame(my_list))
dim(data.frame(my_list))