petretta at unina.it
2012-Nov-07 14:54 UTC
[R] R: net reclassification index after Cox survival analysis
Dear all, I am interested to evaluate reclassification using net reclassification improvement and Integrated Discrimination Index IDI after survival analysis (Cox proportional hazards using stcox). I search a R package or a R code that specifically addresses the categorical NRI for time-to-event data in the presence of censored observation and, if possible, at different follow-up time points. I know that the ?PredictABEL? Package contains functions for NRI and IDI calculation but it is unclear for me if it allows censored observation. Package ?survIDINRI? calculates only continuous NRI and the function of Package ?Hmisc?[#rcorrp.cens(x1, x2, y) ##] is only for no censored observations. Many thanks. Sincerely, Mario Petretta Dpt. Internal Medicine, Cardiology and Heart Surgery Naples University Federico II - Italy
David Winsemius
2012-Nov-07 17:24 UTC
[R] R: net reclassification index after Cox survival analysis
On Nov 7, 2012, at 6:54 AM, petretta at unina.it wrote:> Dear all, > > I am interested to evaluate reclassification using net > reclassification improvement and Integrated Discrimination Index IDI after > survival analysis (Cox proportional hazards using stcox). I search a R > package or a R code that specifically addresses the categorical NRI for > time-to-event data in the presence of censored observation and, if > possible, at different follow-up time points. > I know that the ?PredictABEL? Package contains functions for NRI and IDI > calculation but it is unclear for me if it allows censored observation. > Package ?survIDINRI? calculates only continuous NRI and the function of > Package ?Hmisc?[#rcorrp.cens(x1, x2, y) ##] is only for no censored > observations.???. Doesn't its name , 'rcorrp.cens' suggest otherwise? Not to mention its description int the Hmisc Index: "Rank Correlation for Paired Predictors with a Possibly Censored Response, and Integrated Discrimination Index". rcoop.cens is a fairly recent addition to Hmisc and I am looking at Hmisc version 3.10-1. If you are looking at a version that is a couple of years old, you may be seeing something different. The argument list you list looks like the one for improveProb(), which does not appear to handle censoring. The rcorrp.cens argument list is: rcorrp.cens(x1, x2, S, outx=FALSE, method=1) And the "S" object is a Surv-object.> Many thanks. > > Sincerely, > > Mario Petretta > Dpt. Internal Medicine, Cardiology and Heart Surgery > Naples University Federico II - Italy > > ______________________________________________ > 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.David Winsemius, MD Alameda, CA, USA
petretta at unina.it
2012-Nov-09 17:04 UTC
[R] R: net reclassification index after Cox survival analysis
Many thanks to Prof. Frank Harrell for the comments and for the relevant considerations. In the meantime, I find an R code to estimate the net reclassification improvement (NRI) in the context of censored survival outcomes published by Benjamin French, Paramita Saha-Chaudhuri, Bonnie Ky, Thomas P Cappola and Patrick J Heagerty. The link is: https://dbe.med.upenn.edu/biostat-research/sites/files/facultyfiles/french_supplement.pdf However, whit this code the confidence interval of NRI is not calculated (I think there is the need for bootstrapping data)and also IDI is not calculated. In my opinion, a standardization (or a consensus statement or a position paper)for this technique seems highly desirable as the NRI is currently used in an increasing number of medical research paper dealing with time-to-event data and censored observation. Sincerely Mario Petretta Dpt Internal Medicine, Cardiology and Heart Surgery University of Naples Federico II - Italy _______________________________ Date: Thu, 8 Nov 2012 06:59:49 -0800 (PST) From: Frank Harrell <f.harrell at vanderbilt.edu> To: r-help at r-project.org Subject: Re: [R] R: net reclassification index after Cox survival analysis Message-ID: <1352386789294-4648895.post at n4.nabble.com> Content-Type: text/plain; charset=UTF-8 And just to add a thought: Any method that requires binning of continuous variables is suspect unless you get unanimous agreement on the category boundaries across all subjects. And even then continuous measures have many advantages. Frank petretta wrote> Many thanks for Your time. > > M.P. > >> >> On Nov 7, 2012, at 9:59 AM,> petretta@> wrote: >> >>> Thanks to David Winsemius for the replay. i use the latest update of >>> Hmisc package and I try as reported in the example: >>> >>> set.seed(1) >>> library(survival) >>> x1 <- rnorm(400) >>> x2 <- x1 + rnorm(400) >>> d.time <- rexp(400) + (x1 - min(x1)) >>> cens <- runif(400,.5,2) >>> death <- d.time <= cens >>> d.time <- pmin(d.time, cens) >>> rcorrp.cens(x1, x2, Surv(d.time, death)) >>> >>> but to me it appears that NRI and IDi are not reported in the results: >>> >>> Dxy S.D. x1 more concordant x2 more concordant >>> -8.212107e-02 1.370738e-01 4.589395e-01 >>> 5.410605e-01 >>> n missing uncensored Relevant >>> Pairs >>> 4.000000e+02 0.000000e+00 1.100000e+01 >>> 4.262000e+03 >>> Uncertain C X1 C X2 Dxy >>> X1 >>> 1.553380e+05 9.920225e-01 9.258564e-01 >>> 9.840450e-01 >>> Dxy X2 >>> 8.517128e-01 >> >> The NRI is not reported but an equivalent measure is. As far as getting >> output that is labeled the way you expect it, I also looked at the >> PredictABEL::reclassification function help page: >> >> "The function also computes continuous NRI, which does not require any >> discrete risk categories and relies on the proportions of individuals >> with >> outcome correctly assigned a higher probability and individuals without >> outcome correctly assigned a lower probability by an updated model >> compared with the initial model." >> >> I think that is essentiality what rcorrp.cens is providing, just not with >> the labels you expected. >> >> " The function requires predicted risks estimated by using two separate >> risk models. Predicted risks can be obtained using the >> functionsfitLogRegModel and predRisk or be imported from other methods or >> packages." >> >> So it would seem that you could use results from any censored survival >> models that had a predict method. >> >> -- >> David. >> >> >>> >>> but only after: >>> >>> #rcorrp.cens(x1, x2, y) ## no censoring >>> set.seed(1) >>> x1 <- runif(1000) >>> x2 <- runif(1000) >>> y <- sample(0:1, 1000, TRUE) >>> rcorrp.cens(x1, x2, y) >>> improveProb(x1, x2, y) >>> >>> thus censoring not allowed. Or I'm in error? >>> >>> Many thanks >>> >>> David Winsemius <> dwinsemius@> > ha scritto: >>> >>>> >>>> On Nov 7, 2012, at 6:54 AM,> petretta@> wrote: >>>> >>>>> Dear all, >>>>> >>>>> I am interested to evaluate reclassification using net >>>>> reclassification improvement and Integrated Discrimination Index IDI >>>>> after >>>>> survival analysis (Cox proportional hazards using stcox). I search a R >>>>> package or a R code that specifically addresses the categorical NRI >>>>> for >>>>> time-to-event data in the presence of censored observation and, if >>>>> possible, at different follow-up time points. >>>>> I know that the ???PredictABEL??? Package contains functions for NRI >>>>> and IDI >>>>> calculation but it is unclear for me if it allows censored >>>>> observation. >>>>> Package ???survIDINRI??? calculates only continuous NRI and the >>>>> function of >>>>> Package ???Hmisc???[#rcorrp.cens(x1, x2, y) ##] is only for no >>>>> censored >>>>> observations. >>>> >>>> ???. Doesn't its name , 'rcorrp.cens' suggest otherwise? Not to mention >>>> its description int the Hmisc Index: "Rank Correlation for Paired >>>> Predictors with a Possibly Censored Response, and Integrated >>>> Discrimination Index". rcoop.cens is a fairly recent addition to Hmisc >>>> and I am looking at Hmisc version 3.10-1. If you are looking at a >>>> version that is a couple of years old, you may be seeing something >>>> different. The argument list you list looks like the one for >>>> improveProb(), which does not appear to handle censoring. The >>>> rcorrp.cens argument list is: >>>> >>>> rcorrp.cens(x1, x2, S, outx=FALSE, method=1) >>>> >>>> And the "S" object is a Surv-object. >>>> >>>> >>>>> Many thanks. >>>>> >>>>> Sincerely, >>>>> >>>>> Mario Petretta >>>>> Dpt. Internal Medicine, Cardiology and Heart Surgery >>>>> Naples University Federico II - Italy >>>>> >>>>> ______________________________________________ >>>>>> R-help@> 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. >>>> >>>> David Winsemius, MD >>>> Alameda, CA, USA >>>> >>>> >>>> >>> >>> >>> >>> Mario Petretta >>> Dipartimento di Medicina Clinica Scienze Cardiovascolari e Immunologiche >>> Facolt??? di Medicina e Chirurgia >>> Universit??? di Napoli Federico II >>> 081 - 7462233 >>> >>> ______________________________________________ >>>> R-help@> 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. >> >> David Winsemius, MD >> Alameda, CA, USA >> >> >> > > ______________________________________________> R-help@> 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.----- Frank Harrell Department of Biostatistics, Vanderbilt University -- View this message in context: http://r.789695.n4.nabble.com/R-net-reclassification-index-after-Cox-survival-analysis-tp4648710p4648895.html Sent from the R help mailing list archive at Nabble.com.