pg电子麻将胡了满屏胡
新闻动态
你的位置:pg电子麻将胡了满屏胡 > 新闻动态 > Logistic构建预测模型:如何用R语言绘制DCA曲线?(附全套代码)

Logistic构建预测模型:如何用R语言绘制DCA曲线?(附全套代码)

2025-03-07 15:35    点击次数:141
Logistic构建临床预测模型系列主要以一篇基于logistic回归构建预测模型的文章为例,从整理数据到构建预测模型,再到内部验证模型,包括了整理数据、随机数据拆分、基线描述、差异性分析、绘制ROC曲线并计算AUC值、HL检验及绘制校准曲线、构建列线图模型并绘制DCA曲线,基本涵盖了Logistic构建预测模型的全过程,敬请期待!决策曲线分析(DCA)是一种评估预测模型和诊断测试的方法,是个与ROC曲线相提并论的相对比较新的模型评价方法。

本文属于Logistic构建临床预测模型系列文章第八篇,分别用R语言和风暴统计对Logistic预测模型DCA曲线的绘制进行复现。系列文章详情请点击下方链接:

①Logistic构建预测模型:SEER数据库文献解读

②Logistic构建预测模型:如何用R语言整理数据?(附全套代码)

③Logistic构建预测模型:如何用R语言拆分数据集并做基线差异性分析?(附全套代码)

④Logistic构建预测模型:如何用R语言做Logistic单因素+多因素回归分析!(附全套代码)

⑤Logistic构建预测模型:如何用R语言绘制精美的ROC曲线?(附全套代码)

⑥Logistic构建预测模型:如何用R语言绘制校准曲线并做H-L检验?(附全套代码)

⑦Logistic构建预测模型:如何用R语言绘制Logistic预测模型列线图?(附全套代码)

今日文章分为两部分1.文章解读2.R语言复现3.小白简易版DCA曲线绘制1.文章解读案例文献是一篇基于SEER公共数据库的一项回顾性研究,旨在开发和验证列线图以预测脑转移的非小细胞肺癌患者早期死亡。

图片

背景:在非小细胞肺癌(NSCLC)的整个病程中,很多患者会出现预后差、死亡率高的脑转移(BM)。然而,很少有模型能预测有脑转移的NSCLC患者的早期死亡(ED)。我们旨在开发列线图来预测NSCLC脑转移患者ED。方法:从监测、流行病学和最终结果(SEER)数据库中选取了2010年至2015年间患有BM的NSCLC患者。纳入标准如下:(I)患者经病理诊断为NSCLC;(II)患者患有BM。患者按7:3的比例随机分为两组,分别为训练组和验证组。采用单因素和多因素Logistic回归方法来确定伴有BM的NSCLC患者发生ED的危险因素。建立了两个列线图,并通过校准曲线、ROC曲线和决策曲线分析(DCA)进行了验证。随访数据包括生存月数、死因和生命状态。初次诊断后3个月内的死亡定义为ED,终点为全因ED和癌症特异性ED。结果:共纳入了4,920名患有BM的NSCLC患者,并随机分为两个队列(7:3),包括训练队列(n=3,444)和验证队列(n=1,476)。全因ED和癌症特异性ED的独立预后因素包括年龄、性别、种族、肿瘤大小、组织学、T分期、N分期、分级、手术、放疗、化疗、骨转移和肝转移。所有这些变量都用于建立列线图。在全因ED和癌症特异性ED的列线图中,训练数据集的ROC曲线下面积分别为0.813(95% CI:0.799-0.837)和0.808(95% CI:0.791-0.830),验证数据集的ROC曲线下面积分别为0.835(95% CI:0.805-0.862)和0.824(95% CI:0.790-0.849)。此外,校准曲线证明预测的ED与实际值一致。DCA临床应用前景良好。结论:列线图可用来预测患者死亡的具体概率,有助于治疗决策和重点护理,以及医患沟通。本文构建logistic预测模型并做内部验证,思路框架清晰,案例十分典型。先拆分数据集为训练集和验证集,比例为7:3,验证集用于进行内部验证。然后做基线描述,比较训练集和验证集的基线差异性,再做单因素和多因素logistic回归,将单因素P值小于0.05的因素纳入到多因素回归模型中。再根据多因素回归的结果构建列线图预测模型,并对模型进行验证,绘制ROC、校准曲线及DCA曲线,模型比较稳定。今天我们对本文的DCA曲线绘制展开复现。DCA的结果表明列线图模型具有良好的临床实用性。

图片

2.R语言复现2.1安装和加载R包
install.packages("dcurves")install.packages("rmda")library("dcurves")library("rmda")
2.2绘制DCA曲线
complex<-decision_curve(All.cause.early.death ~ Age.years + Sex + Race + Marital + Grade +                                                 Tumor.size.mm + Histology + T_stage + N_stage + Surgery + Radiation +                                                 Chemotherapy + Bone.metastasis + Liver.metastasis,                                                 data = train,family = binomial(link ='logit'),                                                thresholds = seq(0,1, by = 0.01),                                               confidence.intervals= 0.95)#代码解读:thresholds横坐标阈概率的范围,一般是0-1,by是指每隔多少距离计算一个数据点plot_decision_curve(complex,                 curve.names=c("Nomogram"),#图例上每条曲线的名字                 cost.benefit.axis =FALSE,# cost.benefit.axis是另外附加的一条横坐标轴,损失收益比,默认值是TRUE                 col= c("blue","red","black"),#曲线颜色                 confidence.intervals=FALSE,# 设置是否画出曲线的置信区间                 standardize = FALSE)# 设置是否对净受益率(NB)使用患病率进行校正

图片

3.小白简易版DCA曲线绘制用它,小白也能轻松绘制DCA曲线,还能直接美化调整,不是吹的,看过就知道它有多好用!!

图片

3.1电脑端打开风暴统计平台——“风暴智能统计”模块,点击“临床预测模型(最新)”,进入“临床预测模型:内部验证”页面。

图片

3.2导入数据集total

图片

3.3拆分数据集,设置随机数字并确定拆分比例

图片

3.4开展logistic回归分析

图片

3.5结果直出。回归变量和多因素回归设置完成后,下方结果直接给出,如下图所示,快的让人震惊!!!

图片

DCA图显示设置直接小白式操作也可以画出精美曲线,太牛了!

图片

训练集和验证集DCA曲线直接给出,可以下载为高清图片

图片

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。