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: [email protected] ----- Original Message ----- From: William Dunlap <[email protected]> Date: Friday, February 18, 2011 11:58 am Subject: RE: [R] How to flag those iterations which yield a warning? To: Ravi Varadhan <[email protected]>, [email protected] > 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: [email protected] > > [ On Behalf Of Ravi Varadhan > > Sent: Friday, February 18, 2011 8:29 AM > > To: [email protected] > > 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: [email protected] > > > > ______________________________________________ > > [email protected] mailing list > > > > PLEASE do read the posting guide > > > > and provide commented, minimal, self-contained, reproducible code. > > ______________________________________________ [email protected] 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.

