我已经定义了一个自定义函数,如下所示:
my.fun = function() {
for (i in 1:1000) {
...
for (j in 1:20) {
...
}
}
return(output)
}
它返回一个输出矩阵 ,output
由 1000 行和 20 列组成。
我需要做的是重复函数说 5 次并将五个output
结果存储到一个全新的矩阵中,final
比如想尝试并行化这些额外的 5 次重复)。
因此final
应该是一个具有 5000 行和 20 列的矩阵(这 5 次重复背后的基本原理是在我使用的两个 for 循环中,以及其他函数sample
)。
我尝试使用final <- replicate(5, my.fun())
,它正确计算了五次复制,但是我必须“手动”将元素放入一个全新的 5000 x 20 矩阵中。有没有更优雅的方法呢?(也许使用sapply()
?)。非常感谢