我有一个包含嵌套列表的列表对象,每个列表都包含一个数据框。下面的代码模拟了我的数据结构:
## simulate my data structure -- list of data frames
mylist <- list()
for (i in 1:5) {
tmp <- list(data = data.frame(x=sample(1:5, replace=T), y=sample(6:10, replace=T)))
mylist <- c(mylist, tmp)
}
我正在寻找行绑定我的所有数据框以创建一个主数据框。目前我使用一个for
循环来完成这个动作:
## goal: better way to combine row bind data frames
## I like rbind.fill because sometimes my data are not as clean as desired
library(plyr)
df <- data.frame(stringsAsFactors=F)
for (i in 1:length(mylist)) {
tmp <- mylist[i]$data
df <- rbind.fill(df, tmp)
}
实际上,我的主列表非常大 - 长度为 3700,而不是 5 - 所以我的for
循环非常慢。
有没有更快的方法来完成相同的任务?