[R] stop()

Greg Snow Greg.Snow at imail.org
Tue Oct 11 22:27:12 CEST 2011


Replace "stop()" with "break" to see if that does what you want.  (you may also want to include "cat()" or "warn()" to indicate the early stopping.

-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
801.408.8111


> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of Doran, Harold
> Sent: Tuesday, October 11, 2011 11:32 AM
> To: r-help at r-project.org
> Subject: [R] stop()
> 
> Suppose I have a function, such as the toy example below:
> 
> myFun <- function(x, max.iter = 5) {
>                for(i in 1:10){
>                result <- x + i
>                iter <- i
>                if(iter == max.iter) stop('Max reached')
>                }
>                result
>                }
> 
> I can of course do this:
> myFun(10, max.iter = 11)
> 
> However, if I reach the maximum number of iterations before my
> "algorithm" has finished (in my real application there are EM steps for
> a mixed model), I actually want the function to return the value of
> "result" up to that point. Currently using stop(), I would get
> 
> > myFun(10, max.iter = 4)
> Error in myFun(10, max.iter = 4) : Max reached
> 
> But, in this toy case the function should return the value of "result"
> up to iteration 4.
> 
> Not sure how I can adjust this.
> 
> Thanks,
> Harold
> 
> 
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at 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.



More information about the R-help mailing list