------------------------
library(parallel)
library(iterators)
library(foreach)
library(doParallel)
cores=detectCores()
cl <- makeCluster(cores[1]-1)
registerDoParallel(cl)
a=rep(100, NA)
rate=rep(100, NA)
foreach(i = 1:100)%dopar%{
rate[i] = i / 100
b=runif(100, 0,1)
c=runif(100, 0,1)
a[i]=mean(b^2+c^2<rate[i])
}
plot(rate, a)
#stop cluster
stopCluster(cl)
for循环结构语法:
其中var表示循环变量,seq为向量,expr为执行的语句。
例1 下面我们通过for循环来计算
例2 Fibonacc数列为: ,求Fibonacc数列前50项的和。
运行结果
因此Fibonacc数列前50项的和为32951280098。
for (i in seq(from=0.1,to=2.9,by=0.2)){assign(paste("swc_", i, sep = ""), subset(swc_1, swc_1$z == i))
}