如何将列表转换为具有不同长度和列方式的数据框

时间:2016-12-07 21:07:39

标签: r

我有一个巨大的数据。我试图做一个例子,但这是不可能的,因为我有10000个文件,而且它们非常庞大。所以我尝试用下面的例子给出我需要的东西

Imagine I have a data like this 

d1 <- data.frame(y1=c(1,2,3,5,7),y2=c(4,5,6))
d2 <- data.frame(y1=c(3,2,1),y2=c(6,5,4))
d3 <- data.frame(y1=c(3,2,1,5),y2=c(6,5,4,NA))
my.list <- list(d1, d2,d3)

我希望有一个像这样的数据框

1   4   3   6   3   6
2   5   2   5   2   5
3   6   1   4   1   4
5   NA          5   NA
7   NA              

我读了这篇What is the most efficient way to cast a list as a data frame?as.data.frame flattens nested list into single row instead of creating row for each record以及其他许多相关帖子,但我找不到合适的解决方案

我做了

my.df <- do.call("cbind", lapply(my.list, data.frame))

错误

  

data.frame(...,check.names = FALSE)中的错误:参数暗示   不同的行数:3,4,5

我做

do.call(cbind.data.frame, my.list)

错误

Error in data.frame(..., check.names = FALSE) : 
  arguments imply differing number of rows: 3, 4, 5

0 个答案:

没有答案