诊断模型的另一种验证,R语言绘制决策曲线

尔云间 一个专门做科研的团队
小伙伴们大家好啊,小云今天要和大家讲的是决策曲线的绘制,小云之前了解了一下诊断模型,感觉和之前小云接触的预后模型有点像,但不一样的是,小云今天接触的诊断模型只有一个分组,即高低分组与各基因表达量进行计算,而预后模型则是时间和状态两个量。小云今天要说的是决策曲线的绘制。

这个诊断模型有五个基因,然后这里的分组是用的高低分组
library(ggDCA)
library(rms)
library(nricens)
library(foreign)
library(rmda)
library(regplot)
data3 <- read.table(file = "input.txt",header = T,sep = "\t",row.names = 1)#载入数据
#1.诊断列线图构建
dd <- datadist(data3)
options(datadist="dd")
RAB24<- decision_curve(Risk_Score~ RAB24,data = data3,
family = binomial(link ='logit'),#模型类型,这里是二分类
thresholds= seq(0,1, by = 0.01),
confidence.intervals =0.95,#95可信区间
study.design = 'cohort')#研究类型,这里是队列研究
DNAJB9<- decision_curve(Risk_Score~ DNAJB9,data = data3, family = binomial(link ='logit'),
thresholds= seq(0,1, by = 0.01),
confidence.intervals =0.95,study.design ='cohort')
TOMM5<- decision_curve(Risk_Score~ TOMM5,data = data3, family = binomial(link ='logit'),
thresholds= seq(0,1, by = 0.01),
confidence.intervals =0.95,study.design ='cohort')
STAT3<- decision_curve(Risk_Score~ STAT3,data = data3, family = binomial(link ='logit'),
thresholds= seq(0,1, by = 0.01),
confidence.intervals =0.95,study.design ='cohort')
PHF23<- decision_curve(Risk_Score~ PHF23,data = data3,
family = binomial(link ='logit'),#模型类型,这里是二分类
thresholds= seq(0,1, by = 0.01),
confidence.intervals =0.95,#95可信区间
study.design = 'cohort')#研究类型,这里是队列研究
nomogram<- decision_curve(Risk_Score ~ RAB24+DNAJB9+TOMM5+STAT3+PHF23,data = data3,
family = binomial(link='logit'),
thresholds= seq(0,1, by = 0.01),
confidence.intervals =0.95,study.design ='cohort')
List<-list(RAB24,DNAJB9,TOMM5,STAT3,PHF23,nomogram)
plot_decision_curve(List,curve.names= c('RAB24','DNAJB9','TOMM5','STAT3','PHF23','nomogram'),
cost.benefit.axis =T,col = c('red','blue','green','yellow','brown'),
confidence.intervals =FALSE,standardize = F,
legend.position = "topright")#legend.position = "none"
最后画出来的曲线是这样的

感觉不是很好看,但差不多就是这么个意思,大家明白流程就好。小伙伴们,你们画出来了吗。
