library(foreach)
cl <- makeCluster(26)
registerDoParallel(cl)
MMM <- matrix(0,nrow=4,ncol=3)
MMM <- foreach(i = 1:4, .combine = rbind) %dopar% {
set.seed(100+i)
c(mean(rnorm(1e5)), sd(rnorm(1e5)), median(rnorm(1e5)))
}
MMM <- foreach(i = 1:4, .combine = rbind) %dopar% {
set.seed(100+i)
a1 <- mean(rnorm(1e5))
a2 <- sd(rnorm(1e5))
a3 <- median(rnorm(1e5))
c(a1, a2, a3)
}
# 在计算结束后别忘记关闭集群
stopImplicitCluster()
stopCluster(cl)
适应于:for循环返回需要返回多个值时,此时可以将其整理成向量,进而使用rbind,将多个向量罗列成矩阵。