[R] How to flag those iterations which yield a warning?
Ravi Varadhan
rvaradhan at jhmi.edu
Sat Feb 19 06:23:37 CET 2011
Dear Bill - your solution works beautifully. Thank you very much.
David - thank you as well for your solution. It also works.
Best regards,
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
----- Original Message -----
From: William Dunlap <wdunlap at tibco.com>
Date: Friday, February 18, 2011 11:58 am
Subject: RE: [R] How to flag those iterations which yield a warning?
To: Ravi Varadhan <rvaradhan at jhmi.edu>, r-help at r-project.org
> 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
> > [ 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
> >
> > PLEASE do read the posting guide
> >
> > and provide commented, minimal, self-contained, reproducible code.
> >
More information about the R-help
mailing list