petretta at unina.it
2010-Dec-05 16:14 UTC
[R] HOW to use the survivalROC to get optimal cut-off values?
I have the same problem of a prevous request HOW to use the survivalROC (or another library in R) to get optimal cut-off values? I want to use the time-dependent survivalROC package.according to the,reference material,it only gives a set of ordered cut-off values .eg. -------------------------------------------------------------------------------- data(mayo) str(mayo) attach(mayo) ROC.1=survivalROC(Stime=time,status=censor,marker=mayoscore4,predict.time=365,lambda=0.05) str(ROC.1) plot(ROC.1$FP, ROC.1$TP, type="l", xlim=c(0,1), ylim=c(0,1), xlab=paste( "FP", "\n", "AUC = ",round(ROC.1$AUC,3)), ylab="TP",main="Mayoscore 4, Method = NNE \n Year = 1") abline(0,1) List of 6 $ cut.values : num [1:313] -Inf 4.58 4.9 4.93 4.93 ... *only 5 values * $ TP : num [1:313] 1 0.999 0.999 0.999 0.998 ... $ FP : num [1:313] 1 0.997 0.993 0.99 0.987 ... $ predict.time: num 365 $ Survival : num 0.93 $ AUC : num 0.888 -------------------------------------------------------------------------------- so i dont know how to use the survivalROC to get optimal cut-off values?(only 5 values) Thank you very much! Mario Petretta Dipartimento di Medicina Clinica Scienze Cardiovascolari e Immunologiche Facolt? di Medicina e Chirurgia Universit? di Napoli Federico II 081 - 7462233
David Winsemius
2010-Dec-05 16:33 UTC
[R] HOW to use the survivalROC to get optimal cut-off values?
On Dec 5, 2010, at 11:14 AM, petretta at unina.it wrote:> I have the same problem of a prevous request > > HOW to use the survivalROC (or another library in R) to get optimal > cut-off values? > > I want to use the time-dependent survivalROC package.according to > the,reference material,it only gives a set of ordered cut-off > values .eg.Optimality specification requires some sort of valuation of incorrect decisions. If you are willing to defend a choice that a false positive has exactly the same loss as a false negative, which is generally not the case in medical decision-making, then the point on the ROC curve which is closest to the upper left-hand corner is "optimal". Having only 5 values is getting pretty close to violating the presumption of ROC analysis that the result be at least pseudo- continuous. I have see quite a few "ROC curves in this situation that do not have a clear winner ( now assuming equal cost for FP and FN which I already said was usually a faulty assumption) because the closest point on the curve was in the middle of the line segment between two of the points. I'm not sure that the typical practice of plotting ROC curves with slanting line segments is valid. There is no information between those discrete points. You should probably be using a table rather than a curve in this situation.> -------------------------------------------------------------------------------- > > data(mayo) > str(mayo) > attach(mayo) > ROC. > 1 > = > survivalROC > (Stime > =time,status=censor,marker=mayoscore4,predict.time=365,lambda=0.05) > str(ROC.1) > > plot(ROC.1$FP, ROC.1$TP, type="l", xlim=c(0,1), ylim=c(0,1), > xlab=paste( "FP", "\n", "AUC = ",round(ROC.1$AUC,3)), > ylab="TP",main="Mayoscore 4, Method = NNE \n Year = 1") abline(0,1) > > List of 6 > $ cut.values : num [1:313] -Inf 4.58 4.9 4.93 4.93 ... *only 5 values > > * $ TP : num [1:313] 1 0.999 0.999 0.999 0.998 ... > > $ FP : num [1:313] 1 0.997 0.993 0.99 0.987 ... > $ predict.time: num 365 > $ Survival : num 0.93 > > $ AUC : num 0.888 > > -------------------------------------------------------------------------------- > so i dont know > how to use the survivalROC to get optimal cut-off values?(only 5 > values) > > Thank you very much! > > > > Mario Petretta > Dipartimento di Medicina Clinica Scienze Cardiovascolari e > Immunologiche > Facolt? di Medicina e Chirurgia > Universit? di Napoli Federico II > 081 - 7462233 > > ______________________________________________ > 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 West Hartford, CT