前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >受限平均生存时间(Restricted mean survival time)简析及R语言实现

受限平均生存时间(Restricted mean survival time)简析及R语言实现

作者头像
生信技能树
发布2020-09-29 23:33:26
9.3K3
发布2020-09-29 23:33:26
举报
文章被收录于专栏:生信技能树

前些天我的学徒写了教程:人人都可以学会生存分析(学徒数据挖掘) 吸引到了读者:武汉大学金文意,他希望可以分享一下生存分析的新玩法:

受限平均生存时间

大家好,我是武汉大学金文意。很荣幸受曾老师邀请,与大家简短地分享一下我对受限平均生存时间的一点薄见。水平有限,有不足之处敬请指正!

背景

在诸如JAMA oncology等顶级期刊中,我们经常会看到如图1所示的Restricted mean survival time(RMS time),即受限平均生存时间1。基于RMS time的组间评价方法既往多见于前瞻性的临床对照实验中,但是近年来,RMS time在预后模型(prognostic signature)领域亦逐渐开始普及

单从与生物信息学息息相关的prognostic signature领域来说,假如你构建了一个prognostic signature,该signature可将患者分成不同风险组(例如高、中、低风险)。传统的做法是直接绘制K-M生存曲线并log-rank计算组间差异,如果p-value小于0.05即可判断组间的生存率有显著差异。

但是,仅仅这样就足够了吗?log-rank test比较的是存在删失的情况下组间的生存时间分布2。对于更精确的医学研究,我们更想知道的是,截止至某一年的时间点,组间的生存差异。这个时候,就要引出我们的RMS time了。

图1

定义

RMS time, 其描述的是纳入研究的患者在随访t时间段内的平均生存时间,可以估计为生存曲线下直至预定时间点的面积,因此可以考虑该时间范围之前的所有生存信息3。这恰恰是其相对于传统生存分析的优势所在。

R语言实现

survRM2 package常用来计算RMS time,方便起见,使用包中的示例数据进行展示。

require(survRM2)

data =rmst2.sample.data() #input data

我们看一下数据结构,我们只需要三列数据(生存时间、生存状态、及你的依据处理因素/风险因素的分组arm)

代码语言:javascript
复制
head(data[,1:3])
代码语言:javascript
复制
##        time status arm
代码语言:javascript
复制
## 1  1.095140      1   1
代码语言:javascript
复制
## 2 12.320329      0   1
代码语言:javascript
复制
## 3  2.770705      1   1
代码语言:javascript
复制
## 4  5.270363      1   1
代码语言:javascript
复制
## 5  4.117728      0   0
代码语言:javascript
复制
## 6  6.852841      1   0

简单调用函数进行计算,依序输入,其中,tau指的是你所设置的时间点。函数的其他参数的具体说明可自行查看R中该包的说明手册。

代码语言:javascript
复制
RMS <- rmst2(data$time, data$status, data$arm, tau=10)
代码语言:javascript
复制
print(RMS)
代码语言:javascript
复制
## The truncation time: tau = 10  was specified.
代码语言:javascript
复制
##                                           
代码语言:javascript
复制
## Restricted Mean Survival Time (RMST) by arm
代码语言:javascript
复制
##               Est.    se lower .95 upper .95
代码语言:javascript
复制
## RMST (arm=1) 7.146 0.283     6.592     7.701
代码语言:javascript
复制
## RMST (arm=0) 7.283 0.295     6.704     7.863
代码语言:javascript
复制
##
代码语言:javascript
复制
##
代码语言:javascript
复制
## Restricted Mean Time Lost (RMTL) by arm
代码语言:javascript
复制
##               Est.    se lower .95 upper .95
代码语言:javascript
复制
## RMTL (arm=1) 2.854 0.283     2.299     3.408
代码语言:javascript
复制
## RMTL (arm=0) 2.717 0.295     2.137     3.296
代码语言:javascript
复制
##
代码语言:javascript
复制
##
代码语言:javascript
复制
## Between-group contrast
代码语言:javascript
复制
##                        Est. lower .95 upper .95     p
代码语言:javascript
复制
## RMST (arm=1)-(arm=0) -0.137    -0.939     0.665 0.738
代码语言:javascript
复制
## RMST (arm=1)/(arm=0)  0.981     0.878     1.096 0.738
代码语言:javascript
复制
## RMTL (arm=1)/(arm=0)  1.050     0.787     1.402 0.738
代码语言:javascript
复制

可以看到给出的信息非常详细并给出了组间的显著性指标,一般来说,文章中只需要给出RMS time即可。

可视化的话,可以直接使用plot函数,也可依据你的个人需求编制函数进行定制,将其组合成一幅图等。我们简单的plot一下:

代码语言:javascript
复制
plot(RMS, xlab="Years", ylab="Probability")

其中,红色部分表示RMS time,黄色部分表示RMSL(Restricted Mean Time Lost)。

总体来说,RMS time的分析过程较为简单。然而,RMS time这项指标,如同时间依赖的ROC曲线一样,恰恰是佐证你研究的一剂强心剂。

参考文献

1. Li B, Cui Y, Diehn M, Li R. Development and Validation of an Individualized Immune Prognostic Signature in Early-Stage Nonsquamous Non-Small Cell Lung Cancer. JAMA Oncol. 2017;3(11):1529-1537. doi:10.1001/jamaoncol.2017.1609

2. http://www.lifescienceglobal.com/pms/index.php/ijsmr/article/view/674

3. Wang Z, Wu H, Xie L, et al. Correlation of Milestone Restricted Mean Survival Time Ratio With Overall Survival Hazard Ratio in Randomized Clinical Trials of Immune Checkpoint Inhibitors: A Systematic Review and Meta-analysis. JAMA Netw Open. 2019;2(5):e193433. doi:10.1001/jamanetworkopen.2019.3433

写在文末

如果你确实想把生存分析学会,学好,我在生信技能树多次分享过生存分析的细节也值得你认真读完;

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档