科研信息学

SurvivalROC

2019-05-27  本文已影响62人  陈宇乔

example

###### Examples

data(mayo)
nobs <- NROW(mayo)
cutoff <- 365
## MAYOSCORE 4, METHOD = NNE
Mayo4.1= survivalROC(Stime=mayo$time,  
                     status=mayo$censor,      
                     marker = mayo$mayoscore4,     
                     predict.time = cutoff,span = 0.25*nobs^(-0.20) )
plot(Mayo4.1$FP, Mayo4.1$TP, type="l", xlim=c(0,1), ylim=c(0,1),   
     xlab=paste( "FP", "\n", "AUC = ",round(Mayo4.1$AUC,3)), 
     ylab="TP",main="Mayoscore 4, Method = NNE \n  Year = 1")
abline(0,1)

## MAYOSCORE 4, METHOD = KM
Mayo4.2= survivalROC(Stime=mayo$time,  
                     status=mayo$censor,      
                     marker = mayo$mayoscore4,     
                     predict.time =  cutoff, method="KM")
plot(Mayo4.2$FP, Mayo4.2$TP, type="l", xlim=c(0,1), ylim=c(0,1),   
     xlab=paste( "FP", "\n", "AUC = ",round(Mayo4.2$AUC,3)), 
     ylab="TP",main="Mayoscore 4, Method = KM \n Year = 1")
abline(0,1)

training



library(survivalROC)
library(ggplot2)
?survivalROC
score<- as.data.frame(t(my_formula))
phe$censor<- as.integer(ifelse(phe$`Death at FU`=='yes',1,0))
survival_data<- data.frame(time=as.integer(phe$time),censor=phe$censor,survival_datascore4=score$my_formula_res)
nobs <- NROW(survival_data)
cutoff <- 60 ### 5年
## survival_dataSCORE 4, METHOD = NNE
survival_data4.1= survivalROC(Stime=survival_data$time,  
                     status=survival_data$censor,      
                     marker = survival_data$survival_datascore4,     
                     predict.time = cutoff,span = 0.25*nobs^(-0.20) )

plot(survival_data4.1$FP, survival_data4.1$TP, type="l", col='red',xlim=c(0,1), ylim=c(0,1),   
     xlab=paste( "FP", "\n", "AUC = ",round(survival_data4.1$AUC,3)), 
     ylab="TP",main="survival_datascore 4, Method = NNE \n  Year = 1")
abline(0,1)

# p <- ggplot(mapping = aes(x = survival_data4.1$FP, y = survival_data4.1$TP))+ geom_line()
# print(p)


## survival_dataSCORE 4, METHOD = KM
survival_data4.2= survivalROC(Stime=survival_data$time,  
                     status=survival_data$censor,      
                     marker = survival_data$survival_datascore4,     
                     predict.time =  cutoff, method="KM")
plot(survival_data4.2$FP, survival_data4.2$TP, type="l", xlim=c(0,1), ylim=c(0,1),   
     xlab=paste( "FP", "\n", "AUC = ",round(survival_data4.2$AUC,3)), 
     ylab="TP",main="survival_datascore 4, Method = KM \n Year = 1")
abline(0,1)

results

image.png
上一篇下一篇

猜你喜欢

热点阅读