列线图,又称诺莫图(Nomogram),它是建立在回归分析的基础上,使用多个临床指标或者生物属性,然后采用带有分数高低的线段,从而达到设置的目的:基于多个变量的值预测一定的临床结局或者某类事件发生的概率。列线图(Nomogram)可以用于多指标联合诊断或预测疾病发病或进展。
近些年来在高质量SCI临床论文中用的越来越多。列线图将回归模型转换成了可以直观的视图,让结果更容易判断,具有可读性,例如:

今天我们使用手把手操作教大家在COX回归的基础上做出这样的列线图,首先要进行R语言3.6以上版本的安装及RStudio的安装,安装过程就不详细说了,我们使用R语言自带survival包的cancer数据库为例.
首先打开RStudio

然后加载数据包,数据包都要先下好

library(survival)
library(rms)


然后进行导入数据

data(package="survival")
bc<-cancer
dc<-datadist(bc)
options(datadist="dc")


建立COX回归方程

f <- cph(Surv(time, status) ~ age + sex + ph.ecog + pat.karno +wt.loss, x=T, y=T, surv=T, data=cancer, time.inc=36)


对COX回归方程进行解析

summary(f)


绘制列线图

surv <- Survival(f)
nom <- nomogram(f, fun=list(function(x) surv(36, x), function(x) surv(60, x), function(x) surv(120, x)), lp=F, funlabel=c("3-year survival", "5-year survival", "10-year survival"),maxscale=10, fun.at=c(0.95, 0.9, 0.85, 0.8, 0.75, 0.7, 0.6, 0.5))
plot(nom)


内部验证

validate(f, method="boot", B=1000, dxy=T)
rcorrcens(Surv(time, status) ~ predict(f), data = dc)


1-0.344=0.656,即为C-index
一致性检验

f3 <- cph(Surv(time, status) ~ age + sex + ph.ecog + pat.karno +wt.loss, x=T, y=T, surv=T, data=bc, time.inc=36)
cal3 <- calibrate(f3, cmethod="KM", method="boot", u=36, m=220, B=1000)
plot(cal3)
f5 <- cph(Surv(time, status) ~age + sex + ph.ecog + pat.karno +wt.loss, x=T, y=T, surv=T, data=bc, time.inc=60)
cal5 <- calibrate(f5, cmethod="KM", method="boot", u=60, m=220, B=1000)
plot(cal5)
f10 <- cph(Surv(time, status) ~ age + sex + ph.ecog + pat.karno +wt.loss, x=T, y=T, surv=T, data=bc, time.inc=120)
cal10 <- calibrate(f10, cmethod="KM", method="boot", u=120, m=220, B=1000)
plot(cal10)





根据要求一步一步验证是完全可以做出来的,还有外部验证就不详细说了,有兴趣的可以关注我的科研教程。
动动小手关注一下吧,更多精彩文章尽在零基础说科研

手把手教你使用R语言建立COX回归并画出列线图(Nomogram)相关推荐

  1. 手把手教你使用R语言做LASSO 回归

    LASSO 回归也叫套索回归,是通过生成一个惩罚函数是回归模型中的变量系数进行压缩,达到防止过度拟合,解决严重共线性的问题,LASSO 回归最先由英国人Robert Tibshirani提出,目前在预 ...

  2. 用R语言建立logistic回归模型

    用R语言建立logistic回归模型 公式:fm<-glm(formula,family=binomial(link=logit),data=data.frame) 其中:link=logit可 ...

  3. R语言使用循环语句一次性画出多幅图

    R语言使用循环语句一次性画出多幅图 首先加载包,patchwork用来一个界面展示多幅图 具体的可以看这篇文章 library(ggplot2) library(patchwork) 以数据iris为 ...

  4. 独家 | 手把手教你学习R语言(附资源链接)

    作者:NSS 翻译:杨金鸿 术语校对:韩海畴 全文校对:林亦霖 本文约3000字,建议阅读7分钟. 本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言时普遍存在缺乏系统学习方法的问题.学习者 ...

  5. 超级干货 :手把手教你学习R语言(附资源链接)

    作者:NSS:翻译:杨金鸿:校对:韩海畴,林亦霖: 本文约3000字,建议阅读7分钟. 本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言时普遍存在缺乏系统学习方法的问题.学习者不知道从哪开 ...

  6. 手把手教你学习R语言

    本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言时普遍存在缺乏系统学习方法的问题.学习者不知道从哪开始,如何进行,选择什么学习资源.虽然网络上有许多不错的免费学习资源,然而它们多过了头,反 ...

  7. 手把手教你入门R语言--数据分析篇(1)——数据导入与基础绘图

    R语言入门系列课程(6) 前面已将R语言的基础全部交给大家了,这两节将教大家用R语言进行数据分析的基础.数据读入(数据源包括txt文件.Excel文件.MySLQ数据库.MongoDB数据库).数据写 ...

  8. 手把手教你使用R语言做出SCI论文中的表二(单因素分析表)(2)

    在前面的章节,我们已经用R语言分析了一种SCI单因素表格的制作方法,今天我们来继续分析,这种分类的,其实方法都是差不多的 我们先要对表进行分析,要看它表达的是什么意思,其实就是通过回归分析对子集的分析 ...

  9. R语言怎么比较两个模型C指数,手把手教你用R语言评价临床预测模型,一文就够(附代码)...

    (三)Logistic回归模型评价: 在常用的临床模型构建中,主要分为两种,包括临床预测模型(Cox回归模型)和临床诊断模型(Logstic回归模型).在之前的内容中,阿琛给大家介绍了如何使用Nomo ...

最新文章

  1. OpenCV-Python官方文档学习笔记(上)
  2. Reddit年度盘点:那些2019年最佳机器学习项目
  3. MySQL 快速入门教程
  4. ActiveMQ跟SpringBoot整合的双向队列
  5. 了解Logstash输入插件
  6. 04-课后作业1-字符串加密
  7. python大型项目中的日志模块_Python中日志模块的使用
  8. 计算机应用基础的文档,计算机应用基础
  9. 物联网安全研究领域,最常见的几大安全漏洞
  10. DXperience 7.1.1
  11. 红包大战复盘:谁赢得了这场春节游戏?
  12. tif怎么转换成jpg格式
  13. 编程工具│Fiddler 抓包 mumu 模拟器详细配置步骤
  14. 玉米田 炮兵阵地 状态压缩DP
  15. nginx服务器中url重写rewrite参数和例子
  16. uac管理员程序_在Windows 10中创建没有UAC提示的管理员模式快捷方式
  17. Android播放视频时屏幕保持唤醒不息屏
  18. COLA 4.0:应用架构的最佳实践
  19. C/C++程序员学习路线
  20. Android下的配置管理之道之主从gerrit配置使用replication插件

热门文章

  1. jQuery MiniUI 开发教程 TreeGrid 创建TreeGrid(一)
  2. 保存网页和保存HTML什么区别,想知道保存网页时,把网页保存为MHTML和HTML有何区别?...
  3. 微信小程序/uni-app 蓝牙打印开发教程和常见问题总结【文末附源码】
  4. 互联网快讯:猿辅导推出教育科技新品牌“飞象星球”;披头士乐队入驻TikTok;阿里平头哥发布自研CPU芯片倚天710
  5. flutter录音_Flutter直播SDK怎么使用?5步快速开发直播应用
  6. 物理学复试面试专业问题最全整理(魔鬼训练)
  7. TCP 协议标志位PSH的作用
  8. Python生成动态二维码,又掌握了一个小技巧
  9. 笔记本重置找不到恢复环境_重置Win10电脑时提示找不到恢复环境的解决教程
  10. PTA-7-32 说反话-加强版(C语言)