本文只涉及到生存曲线绘制,不涉及生存分析理论问题

本文采用两种方法绘制生存曲线,其实是用plot()和ggsurvplot()两种函数绘图而已

1. plot()函数绘制生存曲线

基本流程

Surv(): 用于创建生存数据对象 (主要输入生存时间和状态逻辑值)

survfit():对生存数据对象拟合生存函数,创建KM(Kaplan-Meier)生存曲线

survdiff(): 对不同组的生存率进行检验 (案例中我们是对比的是不同性别)

补充说明:

survdiff(formula, data, subset, na.action, rho=0, timefix=TRUE)

#With rho = 0 this is the log-rank or Mantel-Haenszel test,

#with rho = 1 it is equivalent to the Peto & Peto modification of the Gehan-Wilcoxon test.

plot():绘图

绘制过程如下

为了方便对应数据阅读理解,给出数据前几行(数据详细说明R中自行查看)

library(survival)

Lung

head(Lung)

image.png

plot函数绘图:

#Kaplan-Meier曲线

#基本流程:Surv()、survfit()、survdiff()

#绘图用plot()

Lungsurv

Lungfit

survdiff(Lungsurv~Lung$sex, rho=0)

#绘图及美化

plot(Lungfit, conf.int = "none",

col = c('#22cc99', '#772222'), lwd = 2, mark.time=T,

xlab='Time', ylab='Survival Probability')

#下面几行代码大家在R中运行一下便知道每步代码做了什么

abline(h=0.5, lty=3)

abline(v=270, lty=3)

abline(v=426, lty=3)

legend('bottomleft', c('Male','Female'),

col=c('#22cc99', '#772222'), lwd=2)

text(900, 0.9, 'p=0.001') #这里的p值是上述survdiff()函数给出

图像效果如下:

Rplot02.png

2. ggsurvplot()函数绘制生存曲线

ggsurvplot()函数属于survminer包

这里不再进行赘述,大家可以根据需求自行修改参数,绘制代码如下

library(survival)

library(survminer)

vars

Lungsurv

Lungfit

#绘图及美化,大家可以根据自己的需求调节对应参数,详见R说明

ggsurvplot(Lungfit,

data = Lung,

pval = TRUE, #加上log-rank test检验的p-value值

#conf.int = TRUE, #加上置信区间

surv.median.line = "hv",

xlab="Time (day)",

legend.title=paste(vars[5], collapse = "+"),

risk.table = TRUE,

trim.strata.names=TRUE,

risk.table.height=0.4,

palette = "Dark2",

#palette = c('#E7B800','#2E9FDF'), #别的配色

ggtheme = theme_bw(),

#ncensor.plot=TRUE #绘制数据删失情况

)

图形效果如下

Rplot.png

为图像加上置信区间,图像效果如下

Rplot05.png

小结:以上就是我给大家分享的生存曲线的绘制,大家可以根据喜好进行选择。敬请大家批评指正

php 算生存曲线,生存分析之生存曲线绘制相关推荐

  1. 生存分析——KM生存曲线、hazard比例、PH假定检验、非比例风险模型(分层/时变/参数模型)(二)

    文章目录 1 数据类型 1.1 删失数据 1.1.1 右删失 1.1.2 左删失 1.1.3 区间删失 1.2 完全数据(Complete data) 2 生存分析几个核心概念 2.1 生存概率 2. ...

  2. 生存分析及生存曲线_2021-01-30

    生存分析(英文:Survival Analysis),是生物信息学分析中常用到的一种重要方法,主要分析场景如:不同组癌症病人在一种或者一种以上的变量作用下其生存概率随着记录时间发展而发生的变化或者走势 ...

  3. 生存分析绘图——Kaplan-Meier生存曲线

    讲原理,方法: 生存分析 简明教程 | Kaplan-Meier | Cox 比例风险回归模型 | 教程推荐在生物医学研究中, 生存分析 是非常重要和常见的分析方法.本文对生存分析中的,Kaplan– ...

  4. 绘制cox生存分析结果的森林图

    欢迎关注"生信修炼手册"! 在之前meta分析的文章中我们介绍了森林图的画法,典型的森林图如下所示 每一行表示一个study,用errorbar展示log odds ratio值的 ...

  5. python数据分析案例-利用生存分析Kaplan-Meier法与COX比例风险回归模型进行客户流失分析与剩余价值预测

    目录 1. 概述 1.1 背景 1.2 目的 1.3 数据说明 2. 相关概念 2.1 事件 2.2 生存时间 2.3 删失 2.4 生存概率 2.5 中位生存时间 2.6 风险概率 3. 数据处理 ...

  6. 重复事件(表现形态:活跃、留存、复购)建模(生存分析)的案例学习笔记

    医学中,重复事件较多,那么放在一些大场景中就会有,用户重复点击/浏览(留存),重复购买(复购)这些场景. 最近也看到一些类似的case就简单整理一下: 笔者之前生存分析的文章: 生存分析--泊松回归( ...

  7. 生存分析——快手的基于深度学习框架的集成⽣存分析软件KwaiSurvival(一)

    看到快手这篇文章,还开源了他们的KwaiSurvival,上手试了试: KwaiSurvival 是快⼿DA⾃主开发的基于深度学习框架的集成⽣存分析软件,帮助使⽤者在 Python编程环境下⾼效地使⽤ ...

  8. survival | 生存分析(1):生存曲线(上)

    从本篇开始,学堂将推出<生存分析(survival analysis)>系列推文,本篇的内容是生存曲线(survival curve),它描述的是生存率随时间变化的走势图,通常呈阶梯状递减 ...

  9. python生存曲线_用户行为与生存分析

    生存分析的来历 生存分析(Survival Analysis)来源于基础医学领域,最早用来研究各种治疗方案对病人寿命的影响.而寿命则用一个end event(死亡)的方式衡量.基本定义如下: T为标记 ...

最新文章

  1. UNIX中的Select函数
  2. 自定义滚动条Js简版
  3. 银行利率是5.45%,房贷是4.9%,有钱该提前还房贷还是存款?
  4. 前端学习(1958)vue之电商管理系统电商系统之参数管理
  5. apolloxlua include关键字
  6. IntelliJ IDEA 运行你的第一个Java应用程序
  7. android系统(107)---Android路由表设置(route amp; DNS)
  8. 用C#调用Windows API向指定窗口发送按键消息(转载)
  9. 4K视频直播与点播系统的搭建与体验
  10. 花书+吴恩达深度学习(五)正则化方法(防止过拟合)
  11. 万事无忧之看看网站的PR值
  12. python网络爬虫系列教程——python中requests库应用全解
  13. Linux用户、群组及权限
  14. 遥感技术在水利行业中的应用
  15. 机器学习之K-means算法:深入浅出K-Means算法
  16. 使用 iPerf 测试路由器局域网性能
  17. 标准正态分布表(scipy.stats)
  18. 电脑记事本在哪个文件夹
  19. 中级软件设计师考试(软考中级)设计模式分类及其典型特点
  20. 详细图解,一眼就能看懂!卷帘快门(Rolling Shutter)与全局快门(Global Shutter)的区别

热门文章

  1. Cisco PacketTracer5---三层交换机连接路由器配置
  2. QQ/微信里被禁止访问的网页怎么处理 如何检测域名是否被QQ/微信 屏蔽
  3. 小学计算机制作表格教案,小学信息技术《制作表格》教案
  4. 夏普Sharp SF-S751D 一体机驱动
  5. Echoing an XML File with the SAX Parser
  6. SQL复杂查询 高速数目和城市数目
  7. 2017年美国50家最顶尖的初创公司排行榜
  8. ubuntu下安装gfortran
  9. html5 audio左侧,HTML5之Audio(四)—— 左右声道
  10. python 全栈开发,Day86(上传文件,上传头像,CBV,python读写Excel,虚拟环境virtualenv)