For循环仅将最终结果存储在R中

For loop only stores final result in R

我正在尝试 运行 R 中的一个 for 循环,它将结果存储在一个列表中。我无法将数据存储在矩阵中,因为我的输出长度不同。例如,以下代码生成一个列表,其中除最后一部分之外的所有条目均为 'NULL'。

for(i in 1:n) {
  time <- list()
  time[[i]] <- (sample(1:96, wb[i], replace=T, prob=weekday[,1]))
print(time)
}

但是,如果我这样做,结果是我想要的,但没有存储,所以我以后不能使用它。

for(i in 1:n) {
   print(sample(1:96, wb[i], replace=T, prob=weekday[,1]))
}

如有任何帮助,我们将不胜感激!

为了增加乐趣(和效率),您可以尝试

time <- lapply(1:n, function(i) sample(1:96, wb[i], replace=T, prob=weekday[,1]))