我对/(\b201[2-5]\b)/g
内的变量遇到了一些麻烦。我加载了集群并设置了几个向量:
foreach
然后,它不起作用:
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
怎么样,但在右侧使用时却找不到它?
答案 0 :(得分:3)
来自我的评论:
用花括号试试。
foreach(i=1:10) %dopar% {
results[i] <- i
}
不仅仅是这个例子,我经历过在R中使用花括号更好。使用它们可以避免许多问题。显然,这些小帮手有一些优势,正如您在浏览互联网时可能看到的那样(例如see here)。