1
我在foreach
內部遇到一些問題。我加載羣集,併成立了幾個向量:foreach無法在foreach中使用`i`(i = 1:N)
library(doParallel)
ncores <- detectCores() - 2
cl <- makeCluster(ncores, outfile="", port=11439)
registerDoParallel(cl)
results <- rep(NA,10)
values <- 20:30
然後,它不工作:
# Error: object 'i' not found
foreach(i=1:10) %dopar%
results[i] <- i
stopCluster(cl)
雖然這確實:
# ok
foreach(i=1:10) %dopar%
values[i]
stopCluster(cl)
怎麼會發現i
時它用在左側的[i]
內,但在右側使用時找不到它?
您是否嘗試添加大括號? '''foreach(...)%dopar%{...}''' – loki
哦,天啊!它確實有效!到底是怎麼回事? – alberto