当列表是行列表时,最有效的list to data.frame方法

当列表是行列表时,最有效的list to data.frame方法,r,memory-management,data-management,R,Memory Management,Data Management,介绍了我有一个列列表的情况,我希望将它们转换为data.frame。如果我有一个行列表,并且希望将它们转换为data.frame,该怎么办 rowList <- lapply(1:500000,function(x) sample(0:1,300,x)) 什么方法更有效?取消列表并填写矩阵可能是最快/最有效的方法: > m <- matrix(unlist(vectorList), ncol=300, nrow=length(vectorList), byrow=TRUE)

介绍了我有一个列列表的情况,我希望将它们转换为data.frame。如果我有一个行列表,并且希望将它们转换为data.frame,该怎么办

rowList <- lapply(1:500000,function(x) sample(0:1,300,x))

什么方法更有效?

取消列表并填写矩阵可能是最快/最有效的方法:

> m <- matrix(unlist(vectorList), ncol=300, nrow=length(vectorList), byrow=TRUE)

>m依靠R数组的列主方面,尝试直接强制到矩阵:

Data <- matrix(unlist(vectorList), ncol = length(vectorList[[1]]), byrow = TRUE)

数据可能与@JoshuaUlrich重复--您确定它是重复的吗?扎克问的是如何将一组向量组合在一起。链接帖子中检查的方法似乎都是通过
cbind
ing或其他方式组合列来构造data.frames。@JoshO'Brien:这一点很好。扎克需要澄清,特别是因为
do.call(rbind,vectorList)
将创建一个矩阵,而不是一个data.frame。@JoshuaUlrich:我编辑了我的文章。如果需要进一步澄清,请告诉我。
> l <- integer(5e6*300)
> print(object.size(l),units="Gb")
5.6 Gb
Data <- matrix(unlist(vectorList), ncol = length(vectorList[[1]]), byrow = TRUE)