所以,我有一个列表,其元素是可变长度的整数向量...它可以像这样再现
N<-1000
x<-list()
for(i in 1:N){
x[[i]]<-1:sample.int(10,1)
}
但在我的情况下,我有一个包含一百万个元素的列表,N=1.000.000
。
我需要的是附加列表的所有元素以创建唯一的向量。我尝试了以下方法,所有这些方法都非常慢,实际上永远不会结束运行,因为在R中附加是非常低效的。
library(abind)
abind(x)
也是这样:
y<-integer()
for(i in 1:length(x)){
y<-append(y,x[[i]])
}
你有什么建议?该向量最终会有大约1000万个值...所以也许R只能在普通计算机上处理这个问题而唯一的解决办法就是将列表拆分成各个部分?
答案 0 :(得分:1)
如果unlist
元素已命名
use.names=FALSE
与list
一起使用
unlist(x, use.names=FALSE)