【发布时间】:2017-07-23 04:18:20
【问题描述】:
library(xml2)
library(rvest)
datpackage <- paste0("dat",1:10)
for(i in 1:10){
assign(datpackage[i], runif(2))
}
datlist <- list(dat1, dat2, dat3, dat4, dat5, dat6, dat7, dat8, dat9, dat10)
“datlist”是我想要的,但有没有更简单的方法来制作列表?
datlist2 <- for (i in 1:10) {
list(paste0("dat",i))
}
datlist3 <- list(datpackage)
我尝试过 datlist2 和 datlist3,但这与“datlist”不同。
当我制作包含数千条数据的列表时,我应该怎么做?
【问题讨论】:
-
datlist <- lapply(1:10, function(ign) runif(2))?如果需要,您可以在之后指定名称。 -
@akrun 使用
replicate的代码更具可读性,这通常是一件好事。如果这是一个简化的示例并且您需要为 10 个“事物”中的每一个做更多的事情,那么使用lapply会更合适。 (而且由于replicate只是简单地调用sapply,它的性能相似。它的使用主要取决于个人喜好。)