【发布时间】:2021-03-21 03:38:54
【问题描述】:
我有一个这样的列表:
l1 <- list(c("1", "A"), c("2", "B"), c("3", "C"))
我想从中创建一个数据框,其中各个列表的第一个值是第一列的值,第二个是第二列的值,所以我想要的输出是:
col1 col2
-----------
1 A
2 B
3 C
但是,当我这样做时
data.frame(l1),我将行作为列:
col1 col2 col3
---------------
1 2 3
A B C
在data.frame 函数的文档中,我找不到相应的参数。如何获得所需格式的数据框?
【问题讨论】:
-
library(data.table); setDT(transpose(l1))[]. -
这能回答你的问题吗?它说 tidyverse,但也显示了其他解决方案。 Tidyverse approach to binding unnamed list of unnamed vectors by row - do.call(rbind,x) equivalent
-
我可能也可以使用那里描述的方法,尽管我更喜欢@DaveArmstrongs 解决方案,因为它为我相当简单的问题提供了一种解决方案,而且我没有明确要求采用 tidyverse 方法.因此,我不认为我的问题是完全重复的。