摘要

在传统的KM或Cox回归分析中,通常我们在研究的起始点测量一个风险因素,并分析它对之后的事件发生(例如死亡事件)的影响。但是在之后的跟踪随访过程中,事情可能在变化:在基线固定的风险因素对事件发生的影响随着事件在变化;或者风险因素本身也可能随事件改变。在本文中,我们讨论在基线时固定的风险因素,对比它短期和长期效应(这里称之为时间依存效应,time-dependent effects),著名的例子是肾脏移植后直接死亡率高于渡过3个月存活期后的死亡率。更进一步,我们讨论一个随时间变化的风险因素(这里称之为时间依赖风险因素, time-dependent risk factors),例如,随着病人年龄的增加和在透析中生存期的延长,左心房体积将显著增加。以上两种都可以用time-dependent Cox regression分析。

时间依赖效应:短期和长期的对比

在研究死亡率是否和某个风险因素相关的研究中,必须要将随访时间长度考虑进去。例如,在普通人群中肥胖是一个著名的增加心血管疾病和死亡率的风险因素,但是它其实是一个超过十年随访后才会有影响的长期曝露因素。但是,在透析病人中,肥胖并没有被发现对死亡率有影响,甚至有发现认为有相反的关系[1]。有研究解释这种现象,在大量的复杂因素中一个重要原因是随访时间长度的不同,普通人群随访时间通常有超过20年的随访时间,而透析病人在不考虑他们的BMI指数的话,其生存时间通常低于10年。

例1:腹膜透析病人的BMI和生存

Snyder等人[2]报道了41,197个腹膜透析(PD)患者的逐年死亡率,依BMI划分。BMI被作为固定风险因在PD起始时被评估。他们的结果显示在PD的第一年,肥胖的校正RR(relative risk)在PD开始时是低于1.0的,这意味这肥胖对第一年生存的保护性作用;该因素在第二年升高超过1.0;第三年则甚至更高。这样的条件分析可以显示在腹膜透析之前的肥胖因素随着时间对死亡率影响的改变。

Synder等人使用的条件方法可能比仅仅将一年生存期和三年生存期对比更好,因为后者的时间窗重叠,一年生存期完全包含在三年生存期中,这模糊了时间依赖的效果。有趣的是,使用以上同样的方法,不论是血液透析还是腹膜透析病人,体重过轻这个基线因素对生存有害的影响则在随着时间下降[2,3],这说明了体重过轻对短期的影响要强于对长期的影响。

在以上例子中,基线风险因素的影响随着时间增强或者减弱,这些应被时间分层研究分析。我们看到在腹膜透析初始的肥胖因素的RR随着随访时间并不一致,甚至更极端的是穿过了1。这种现象也会被认为是“非比例危险(non-proportional hazards)”。除了手动对时间窗进行分层,我们也可以对每个时期做独立的Cox分析。例如,首先用透析开始时的基线BMI预测第一年的死亡率;然后这个参数再次使用一遍,用于第二年的死亡率、第三年的死亡率,以此类推。这种条件的或者时间分层的RR又被称为时间依存RR,因为RR依赖于你观察的特定时间窗。注意这个风险因素我们只在研究起始的基线测量一次。

生存的时间依存风险因素

相比上面的例子,Cox回归分析同样可以研究随时间变化的风险因素(time-dependent risk factors, 又被称为time-varying risk factors or
time-dependent covariates)的效果。它被定义为一种时间改变因素,即指在随访过程中改风险因素被串行测量,即指在Cox回归模型的随时间改变的风险因素(time-varying risk factor)或者依赖于时间的风险因素(time-dependent risk factor)两种。大部分统计软件包比较容易处理这个分析,但是它们的结果并不容易被解释,而且容易由此造成错误。这里我们将解释这种类型的分析。

基本上,在时间依存分析中,对每个病人的随访时间被分割成数个时间窗。首先,对于每个时间窗,使用该段特定的时间依存变量的时间窗初始值来做一个独立的Cox分析。第二,所有的时间窗的特定结果被加权平均。这一系列的短期效应的加权平均最后被显示为一个RR结果。当然,另外的非时间依存变量,例如性别,就是所有时间窗口中的固定因素。

例子2:BMI对死亡率的时间依存效应

Kovesdy等人[4]对512名患有慢性肾病、且还没有展开透析的男性患者展开研究,研究BMI和死亡率的关系。使用BMI的最低十位数为参考等级,结果显示,不论是在固定参数的传统Cox回归还是在时间依存的Cox归回模型(BMI每6个月更新一次)中,更高的BMI和更低的死亡率的相关性。这意味着,一个相对高的BMI最低值和低死亡率相关,不论是在短期(6个月前)还是在更长的时期内(随访中位时间2.3年)。

警告/附加说明

似乎使用一个时间依存的Cox回归模型总是比传统的Cox模型要正确。但是,一个时间依存的Cox回归提供了不同于传统Cox回归分析的研究问题的答案。尽管一个传统Cox分析也说明了一个风险因素对于死亡率的相对长期影响,但是一个时间依存Cox分析则只能说明短期影响。因此,面对的临床论证和一个合理的研究问题应该驱动选择一个合适的分析方法。

另外一个关于时间依存Cox回归分析要特别说明的是,混杂因素(confounders)也可能在随访过程中被重复测量,而且被当作时间变化或时间依存变量被包括在模型中。我们从以前关于系列混淆因素的文献中知道,去校正一个原本应该是或者可能是风险因素结果的协变量,通常这是不正确的[5]。在传统Cox模型中,我们的风险因素和潜在的混淆因素在基线或者之前即都被测量确定,于是我们只用研究保证协变量不在风险因素向结果变换的因果途径上即可。但是对时间依存的协变量,会有更大的风险是一个在随访过程中测量的协变量是,或者部分是我们研究的风险因素的结果。换句话说,一个时间依存的协变量可能是一个混淆因素,但是也可能是一个因果途径上的中间产物。在一个重要的文献中,Wolfe[6]非常清楚的警告了他称之为的“adjusting for sequelae @”。例如,如果一个研究需要比较血液透析病人和腹膜透析病人,那么不应该在时间依存Cox模型中校正随访过程中的入院治疗或者新发展出的并发症,因为非常有可能入院治疗或者新的并发症正是选择某种治疗后的可能产生的影响。

结论

在传统的Cox回归分析研究基线风险因素和死亡率的基础上,还有两种时间依存方法。一种方法,是研究固定在基线上的风险因素在不同时间窗的死亡率(时间-分层效应)。这个结果是在不同时间窗有不同的有分别的RR或HR。另一种方法,是风险因素本身随着随访时间变化,与随后的死亡率相关。这个方法只有个RR或者HR,是所有短期对死亡率效应的加权平均。应该根据科学问题和临床条件选择合适的方法。

注释

@ from Wikipedia: A sequela (usually used in the plural, sequelae) is a pathological condition resulting from a disease, injury, therapy, or other trauma. Typically, a sequela is a chronic condition that is a complication which follows a more acute condition. It is different from, but is a consequence of, the first condition. Timewise, a
sequela contrasts with a late effect, where there is a period, sometimes as long as several decades, between the resolution of the initial condition and the appearance of the late effect.

参考文献

[1] Kalantar-Zadeh K. Causes and consequences of the reverse epidemiology of body mass index in dialysis patients. J Ren Nutr 2005; 15: 142–147.
[2] Snyder JJ, Foley RN, Gilbertson DT et al. Body size and outcomes on peritoneal dialysis in the United States. Kidney Int 2003; 64: 1838–1844.
[3] Kalantar-Zadeh K, Horwich TB, Oreopoulos A et al. Risk factor paradox in wasting diseases. Curr Opin Clin Nutr Metab Care 2007; 10: 433–442.
[4] Kovesdy CP, Anderson JE, Kalantar-Zadeh K. Paradoxical association between
body mass index and mortality in men with CKD not yet on dialysis. Am J Kidney Dis 2007; 49: 581–591.
[5] Jager KJ, Zoccali C, MacLeod A et al. Confounding: what it is and how to deal with it. Kidney Int 2008; 73: 256–260.
[6] Wolfe RA, Strawderman RL. Logical and statistical fallacies in the use of Cox regression models. Am J Kidney Dis 1996; 27: 124–129.

声明

  1. 本文译自“Survival analysis: time-dependent effects and time-varying risk factors”
  2. 本文相应Time-dependent Cox Regression的R语言实现请见“****”
  3. 本文拓展Time-dependent Cox Elastic-Net Regression的R语言实现请见“****”

有时间依存效应或时间依存风险因素的生存分析相关推荐

  1. 计量模型 | 时间固定效应与时间趋势项

    这期推送将比较时间固定效应和时间趋势项的区别,并使用两种方法对模型中可能存在的trend进行识别. Note:Note:Note: 1.该文首发于微信公众号DMETP,欢迎关注:2.需要本次推送所使用 ...

  2. 时间固定效应和个体固定效应的选择_STATA固定效应的时间固定和个体固定效应估计方法、检验策略和操作步骤...

    STATA固定效应的时间固定和个体固定效应估计方法.检验策略和操作步骤 最近在研究空间动态面板模型,其中涉及到固定效应模型要确定时间固定和个体固定效应时,由于在stata中使用,查阅了很多文献最终攻克 ...

  3. 认识时间纬度,管理时间,成就高效人生

    我们身处在无尽向前的时间纬度中,除了在看视频的时候可以随意调节时间的快慢外,在真实的世界中,它正裹挟着我们,随着时钟缓慢而无情的旋转,而我们对于自己人生的进度条,好似无能为力. 在真实的三维世界,我们 ...

  4. Go 学习笔记(48)— Go 标准库之 time (获取时/分/秒的单位值、标准时间和Unix时间转换、字符串时间和Time类型转换、时区转换、时间的加减/休眠)

    1. 概要说明 import "time" time 包提供了时间的显示和测量用的函数.日历的计算采用的是公历. Go 提供以下几种时间类型: 时间点 Time 时间段 Durat ...

  5. mysql 数据表 时间自动_MySQL数据库时间设置自动添加时间和自动更新时间

    MySQL字段中设置时间字段自动添加创建时间和自动更新时间设置, 设置字段类型为:timestamp 默认值设置为current_timestamp(), 更新时间字段字段类型为:timestamp ...

  6. 实现计时、时钟,实时获取当前年月日时分秒,记录时间(获取当前的时间,开始计时,计时过程相当于你的电脑时钟)0000年00月00日 00:00:00

    <!doctype html> <html lang="en"> <head><meta charset="UTF-8" ...

  7. vue 发展历程时间轴动画_PPT时间轴如何做出创意感?海量素材免费分享,网友:收藏...

    时间轴页面,是工作型PPT中常见的页面之一.个人述职或者公司介绍PPT中,使用时间轴,能够让观众更加清晰地了解公司的发展历程. 但是,很多人在制作时间轴页面时,往往是这样的效果: 只有几行字和一根线, ...

  8. python中将HTTP头部中的GMT时间转换成datetime时间格式

    原文: https://blog.csdn.net/zoulonglong/article/details/80585716 需求背景:目前在做接口的自动化测试平台,由于接口用例执行后返回的结果中的时 ...

  9. R语言ggplot2可视化在X轴上可视化时间标签实战:可视化时间标签、对时间标签进行旋转

    R语言ggplot2可视化在X轴上可视化时间标签实战:可视化时间标签.对时间标签进行旋转 目录

最新文章

  1. 图形化编程 html,用GoJS实现图形化交互编程界面示例
  2. 数据可视化[python-pyecharts]制作中国各省份近三个月新型冠状病毒肺炎变化图
  3. 路由器中的管理间距和量度参数
  4. Android .9.png图片的处理
  5. 初等数论--同余方程--同余方程运算:模逆运算,模指数运算
  6. Thirft框架介绍
  7. 商品图片放大镜的JavaScript实现
  8. iphone UITableView及UIWebView的使用
  9. Linux备份全攻略
  10. android listview item按钮,android-listview适配器中的按钮
  11. Android下Cocos2d创建HelloWorld工程
  12. hadoop 命令行运行
  13. 蓝桥杯 ADV-169 算法提高 士兵排队问题
  14. teamviewer解除5分钟商业限制最新方法,永久解决商业限制问题,无需一直改MAC地址
  15. 2015年硅谷最火技术十问
  16. 51单片机简谱音乐3-音阶与频率表问题以及简谱小笔记
  17. 计算机信息安全专业代码0839,全国网络空间安全学科专业分布
  18. 修改VNR源码接入新版有道中文翻译API
  19. 制药企业计算机管理软件,制药企业erp管理系统
  20. 关于向外借货品的库存盘点

热门文章

  1. error C2440: “<function-style-cast>”: 无法从“IplImage *”转换为“cv::Mat”
  2. init.rc语法与解析
  3. 单步ARM汇编解开volatile本质
  4. linux缓存机制buffer/cache/swap
  5. Android系统进阶
  6. Android.mk的一些FAQ
  7. 浅谈Android onTouchEvent 与 onInterceptTouchEvent的区别详解
  8. android之camera2获取数据
  9. d3d 渲染遇到的几个问题
  10. c#连接kafka_c#操作kafka(上)搭建kafka环境