[R] enter browser on error

Tony Plate tplate at blackmesacapital.com
Tue Aug 31 19:46:52 CEST 2004


use options(error=recover), e.g.:

 > remove("x")
NULL
Warning message:
remove: variable "x" was not found
 > (function() {x})()
Error in (function() { : Object "x" not found
 > options(error=recover)
 > (function(y=1) {x})(2)
Error in (function(y = 1) { : Object "x" not found

Enter a frame number, or 0 to exit
1:(function(y = 1) {
Selection: 1
Called from: eval(expr, envir, enclos)
Browse[1]> y
[1] 2
Browse[1]>

Enter a frame number, or 0 to exit
1:(function(y = 1) {
Selection: 0
 >

At Tuesday 11:26 AM 8/31/2004, Bickel, David wrote:
>Is there a way I can get R to automatically enter the browser inside a 
>user-defined function on the generation of an error? Specifically, I'm 
>trying to debug this:
>
>Error in as.double.default(sapply(lis, FUN)) :
>         (list) object cannot be coerced to double
>In addition: There were 38 warnings (use warnings() to see them)
> > traceback()
>8: as.double.default(sapply(lis, FUN))
>7: as.numeric(sapply(lis, FUN))
>6: numeric.sapply(function(x) {
>        x at statistic0
>    })
>
>On detection of the error, I would like browser() to be called at the 
>level of numeric.sapply(), so that I can examine x. I'm wondering if this 
>can be done by modifying the default error handling. Using try() with 
>browser() didn't work.
>
>Thanks,
>David
>_____________________________
>David Bickel  http://davidbickel.com
>Research Scientist
>Pioneer Hi-Bred International
>Bioinformatics & Exploratory Research
>7250 NW 62nd Ave., PO Box 552
>Johnston, Iowa 50131-0552
>515-334-4739 Tel
>515-334-6634 Fax
>david.bickel at pioneer.com, bickel at prueba.info
>
>
>
>This communication is for use by the intended recipient and ...{{dropped}}
>
>______________________________________________
>R-help at stat.math.ethz.ch mailing list
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html




More information about the R-help mailing list