我定义了一个自定义函数,就像这样:
my.fun = function() {
for (i in 1:1000) {
...
for (j in 1:20) {
...
}
}
return(output)
}
该函数返回一个由1000行和20列组成的输出矩阵output
。
我的任务是将该函数重复执行5次,并将这五个output
结果存储到一个全新的矩阵中,例如final
,但是不使用另一个for循环(这样可以使代码更清晰,并且在稍后我想尝试并行化这5个重复)。
因此,final
应该是一个具有5000行和20列的矩阵(进行这5次重复的原理是在我使用的两个for循环中,除了其他函数之外,还使用了sample
函数)。
我尝试使用final <- replicate(5, my.fun())
,它正确计算了五个复制,但然后我必须“手动”将元素放入一个全新的5000 x 20矩阵中.. 是否有一种更优雅的方法来做到这一点?(也许使用sapply()
?)非常感谢