在预测模型中,我们常能见到诺莫图 (Nomogram,也称列线图) 的身影,其作为预测模型可视化的一个重要手段,使得预测模型更具可操作性和实用性。
目前,我们常用的诺莫图有如下5种类型:线段式的静态诺莫图、彩色条带式的静态诺莫图、基于regplot 的动态诺莫图、基于DynNom 的动态诺莫图和基于 shinyPredict 的动态诺莫图。
本文以诺莫图绘制的主要代码与过程演示为主,而有关诺莫图的简介,大家可以回顾医咖会的往期推文(教你用R 画列线图,形象展示预测模型的结果),这里便不作过多介绍。接下来,本文将以 logistic 预测模型为例,对不同类型诺莫图的 R 语言实现做一个汇总,给大家提供一套丰富多彩的诺莫图解决方案。
数据介绍
本次演示所用的案例数据来源于 SEER 数据库,研究目的是构建预测宫颈癌患者淋巴结转移的诺莫图,所涉及的变量有年龄 (Age)、组织学类型 (Hist_type)、组织学分级 (Hist_stage)、肿瘤数目 (Tumor_number)、肿瘤大小 (Tumor_size)、淋巴结转移 (Status) 等。
经过纳入排除,最终用于分析的观测行有 8749 行。鉴于样本量较大,我们采用了TRIPOD (Transparent reporting of a multivariable prediction model for individual prognosis or diagnosis,用于个体预后和诊断的多变量预测模型的透明报告)中给出的 Type 2a 方案进行预测模型的建立与验证。先按照 7:3 的比例,将数据集随机划分为训练集和验证集。训练集、验证集的数据概况如下:
建立预测模型
接着用训练集构建模型(预测因子筛选、多因素logistic模型构建),具体过程不在这里详述了。经过模型验证、评价及调整,最终得到的预测模型中包含了年龄、组织学类型、组织学分级、肿瘤数目这4 个变量。
由于构建线段式静态诺莫图的nomogram函数更易识别lrm函数构建的模型,因此这里先以lrm函数构建模型(注:下文所用的glm与lrm构建的二元logistic模型结果是一致的)。所构建的最佳logistic预测模型的概况如下所示:
确认删除