0
我听说不建议在R中使用for循环,主要是因为它的速度很慢。我听说我应该使用lapply
而不是因为它调用C来提高效率。带循环追加的R函数避免使用(使用lapply代替)
问题:是否可以告诉我如何把下面的例子为lapply
高效的代码(或来自同一家庭的任何其他apply
sapply
)?
myFun <- function(loop){
result = data.frame() #init new df
for(iteration in 1:loop){
generateRnorm1 = matrix(data = rnorm(n = 1000000), nrow = 10000, ncol = 10000)
generateRnorm2 = matrix(data = rnorm(n = 1000000), nrow = 10000, ncol = 10000)
iterationResult = sum(generateRnorm1, generateRnorm2)
bindIterationResult = cbind(iteration, iterationResult)
result = rbind(result, bindIterationResult)
}
return(result)
}
test = myFun(loop = 10)
参见[伯恩斯[R魔族]的第4章(http://www.burns-stat.com/pages/Tutor/R_inferno.pdf) –
谢谢,我会读它 – S12000