[R] How to flag those iterations which yield a warning?
William Dunlap
wdunlap at tibco.com
Fri Feb 18 17:57:46 CET 2011
If you have a function that may produce warnings you
can use withCallingHandlers() to make a new function
that does what the original does but adds some
contextual information to the usual warning report.
E.g.,
addWarningReporting <- function(FUN) {
force(FUN)
function(args) {
withCallingHandlers(
FUN(args),
warning=function(w){
cat("WARNING: ")
print(w)
cat(" args=", deparse(args), "\n")
invokeRestart("muffleWarning")}
)
}
}
> for(i in -2:2) log(i)
Warning messages:
1: In log(i) : NaNs produced
2: In log(i) : NaNs produced
> myLog <- addWarningReporting(log)
> for(i in -2:2) myLog(i)
WARNING: <simpleWarning in FUN(args): NaNs produced>
args= -2L
WARNING: <simpleWarning in FUN(args): NaNs produced>
args= -1L
Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com
> -----Original Message-----
> From: r-help-bounces at r-project.org
> [mailto:r-help-bounces at r-project.org] On Behalf Of Ravi Varadhan
> Sent: Friday, February 18, 2011 8:29 AM
> To: r-help at r-project.org
> Subject: [R] How to flag those iterations which yield a warning?
>
> Hi,
>
> I am running a simulation study with the survival::coxph.
> Some of the simulations result in problematic fits due to
> flat partial likelihood. So, you get the warning message:
>
> Warning message:
> In fitter(X, Y, strats, offset, init, control, weights =
> weights, ... :
> Loglik converged before variable 2 ; beta may be infinite.
>
> How can I keep track of the simulations which yield any kind
> of warning message, so that I can appropriately handle them
> in the post-processing of simulation results?
>
> I know that `try' can be used to capture errors, but I would
> like to capture and detect warnings.
>
> Any pointers would be appreciated.
>
> Thanks,
> Ravi.
> ____________________________________________________________________
>
> Ravi Varadhan, Ph.D.
> Assistant Professor,
> Division of Geriatric Medicine and Gerontology
> School of Medicine
> Johns Hopkins University
>
> Ph. (410) 502-2619
> email: rvaradhan at jhmi.edu
>
> ______________________________________________
> 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