You are absolutly right! I can use If(!cond) inside the loop. Thank you!
2014-02-11 12:43 GMT+01:00 Duncan Murdoch <murdoch.dun...@gmail.com>: > On 14-02-11 5:30 AM, Marc Marí Dell'Olmo wrote: > >> Dear all, >> >> I want to do a loop with foreach. But, I would like to include a condition >> with "next" to don't loop over some elements. >> >> For example, I would like to translate this "for loop" to a "foreach >> loop": >> >> for (i in 1:10) { >> for (j in 1:2) { >> ... >> if((i==2 & j==1) | (i==4 & j==3)) { next } >> ... >> } >> } >> >> Foreach loop??? >> >> foreach (i = c(1:10)) %do%{ >> foreach (j = c(1:2)) %do%{ >> >> #I don't know how to include a "next"!! >> ... >> >> } >> } >> > > I don't know the foreach package; you might want to direct your questions > to its maintainer. But you can always emulate next using an if(), e.g. > with a regular for loop, > > > for (i in 1:10) { > if (cond) next > ... > } > > is the same as > > > for (i in 1:10) { > if (!cond) { > ... > } > } > > My vague understanding of the idea behind the foreach package is that the > different runs through the loop can be run independently so they can be > parallelized. If that's the case, you might be able to evaluate cond for > each i before the loop starts, and then do the equivalent of > > for (i in (1:10)[!cond]) { > ... > } > > Duncan Murdoch > > > >> Thank you! >> >> Marc >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide http://www.R-project.org/ >> posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> >> > [[alternative HTML version deleted]]
______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.