i'm trying use foreach project , kept getting error says iteration counter foreach cannot found. here code.
library(dosnow) a=20 seed=10 cl=makecluster(4,type="sock",outfile="") clusterexport(cl,"a") registerdosnow(cl) x=foreach(i=1:100,.combine="c",.multicombine=t) %dopar% { print(i) set.seed(seed+i) source("d:\\play\\foreach source.r") } stopcluster(cl) the "foreach source.r" code following:
rnorm(1e5)+a+i and below error got:
error in { : task 1 failed - "object 'i' not found" dose know how solve issue?
thanks!
you need local argument in source:
library(dosnow) a=20 seed=10 cl=makecluster(4,type="sock",outfile="") clusterexport(cl,"a") registerdosnow(cl) x=foreach(i=1:100,.combine="c",.multicombine=t) %dopar% { print(i) set.seed(seed+i) source("d:\\play\\foreach source.r", local = true) # <---- here } stopcluster(cl)
Comments
Post a Comment