> exit <- function() {
+ opt <- options(show.error.messages=FALSE)
+ on.exit(options(opt))
+ stop()
+}then
> spend.time <- function(i) {
+ print(i)
+ if (i == 5) {
+ exit()
+ }
+ if (i == 75) {
+ stop("Is this an error?")
+ }
+}
> for(i in 1:100) spend.time(i)
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
>Andrew Robinson wrote:
Andy,
I'm really not sure that he hasn't told us. All he wants to do is stop the process, without throwing an error. return() won't work if he's in a nested function, it will just send him up to the next level. For example, let's say he's in a loop and calling his function in the loop. If he detects a situation he wants to stop the whole program and report it. I think that return will just terminate the function, and the loop will continue.
e.g.
spend.time <- function(i) { if (i == 50) { return() } if (i == 75) { stop("Is this an error?") } }
for(i in 1:100)
spend.time(i)
i
Andrew
On Friday 26 March 2004 16:41, Liaw, Andy wrote:
So you still have not told us what exactly what you are looking for. What do you want some sort of stop() to do inside a function, that is neither an error nor returning? Can you show an example in some other language that has such a feature?
Andy
From: ivo welch [mailto:[EMAIL PROTECTED]
Hi jim: ahhh, but then the error messages are off for "real errors" that occur later.
Hi pierre: a return() in a (2nd-level) function can be different from a stop(). one could argue about whether it should be possible to stop() in a function of course, without it being an error().
regards,
/iaw
James MacDonald wrote:
And a closer examination of the help page would lead you to this:
options(show.error.messages=FALSE) stop()
which is what I believe you want....
Jim
also From Pierre Kleiber:
The thing is that functions don't really stop... they return. So what you want is return() Cheers, Pierre
______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
-- ----------------------------------------------------------------- Pierre Kleiber, Ph.D Email: [EMAIL PROTECTED] Fishery Biologist Tel: 808 983-5399/737-7544 NOAA FISHERIES - Honolulu Laboratory Fax: 808 983-2902 2570 Dole St., Honolulu, HI 96822-2396 ----------------------------------------------------------------- "God could have told Moses about galaxies and mitochondria and all. But behold... It was good enough for government work."
______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
