k-m生存曲线可以像回归曲线一样具有预测性吗?

Python014

k-m生存曲线可以像回归曲线一样具有预测性吗?,第1张

 对于生存数据,1958年,E. L. Kaplan 和 Paul Meier 两位教授介绍了一种全新的、解决随访期间右删失 (right censoring) 问题的生存分析方法,被称作Kaplan-Meier方法。这种方法精确地记录并利用每个个体发生终点事件的具体时间,在任何一个终点事件发生的时间点计算出一个新的、基于之前所有信息的总生存率 (Cumulative survival) 。

相比于之前使用的寿命表法(Life-table method),这种方法更加充分地利用了信息,给出更准确的统计量。同时,作为一种非参数估计方法,不要求总体的分布形式,因此非常适合生存分析时使用。Kaplan-Meier 曲线(简称K-M曲线) 还可以很直观地表现出两组或多组的生存率或死亡率,非常适合在文章中进行展示。因此,K-M曲线也成为了临床研究中最常用的方法之一。

Why Stata?

Stata软件在进行生存分析的过程中具有很强大的功能。无论是 K-M曲线,还是Cox回归分析,甚至是一些更加复杂的参数分析,Stata都可以轻松完成。

相比于SPSS,Stata的可重复性更强,图像更加美观;而相比于R语言,Stata的代码又更加简便、易懂、上手快,甚至可以完全使用窗口菜单完成,非常适合有科研追求的医生入门。

今天,我们就一起来学习一下生存分析中的第一步、也是最重要的步骤之一:K-M曲线的绘制和Logrank检验。

我们将使用Stata自带的一个模拟的药物临床试验的数据集进行所有的演示,请大家在Command对话框中输入webuse drugtr以调入这个数据集。

屏幕显示:

请注意:Stata已经将这个数据集设置成了生存数据的格式,导入数据集后,请大家首先输入stset, clear命令恢复成普通的数据格式。这样才是我们在临床研究中见到的数据结构,我们将在Step 2中学习如何将其转换成生存数据格式。

Step 1

数据集的初步观测

首先,我们来观察一下数据集。大家可以在command line中输入list 查看所有数据,也可以输入list in 5/10查看第5到第10个观测值,屏幕显示:

K-M曲线

变量time:生存时间;group:1=治疗组,0=对照组;status:1=出现结局,0=失访或实验结束时仍存活

1将time拉入时间对话框

2将status拉入状态对话框,点击状态框下方的“定义事件”按钮:填入代表事件发生的“1”

3将group拉入因子对话框

4点击“选项”按钮,进行设置,选择生存图

5点击“比较因子”按钮,进行设置设置如下:勾选对数秩

6回到主对话框,点击“确定”输出结果。

统计专业研究生工作室为您服务

前面花了两期内容,讨论了如何使用软件(包括GraphPad Prism、SPSS和Origin)绘制生存曲线。

生存曲线只是数据呈现的方式之一,其核心必须是统计结果。涉及统计,就不可避免地需要选择使用哪种统计方法。有时,你的数据没有统计意义,还真得回头看看统计方法是否选择正确了。

打开SPSS统计软件,录好数据后,点击生存分析,我们会发现软件中有4种可供使用的统计方法,此时到底该选择哪个呢?

本期主要以SPSS统计分析为例进行讨论,毕竟这个属于专业的统计软件,更加全面。

① 寿命表法

SPSS软件官方解释是这样描述的: 用从每个区间估计的概率估计在不同时间点发生该事件的整体概率。 “寿命表的基本概念是将观察区间划分为较小的时间区间。对于每个区间,使用所有观察至少该时长的人员计算该区间内发生终端事件的概率。 然后使用从每个区间估计的概率估计在不同时间点发生该事件的整体概率。”

上来就整这么一段话,估计打击有点懵。

举个例子。 假如一个临床实验需要随访2000人的生存时间(按月计算),此时会出现两个问题。第一,我们很难做到及时、有效地随访每一位病人,不可能每个月都去问病人是否还活着?第二,如此大量的数据,我们在最终统计时,如果挨个录入,费时费力,极易出错。

别急,寿命表法为我们提供了有力帮助。

寿命表法本质是通过人为划分时间区间的方式,以频数方式呈现数据,采用加权法进行生存率分析的方法。注意, 此时的时间变量是不连续的。

例如上面的例子,我们可以人为划分时间区间为3个月,那么只要病人死亡发生在这个3个月内,都将其归入此区间,极大地减轻了随访难度。同时,以频数的方式呈现数据,无论多少个病人,只要其死亡时间在这个区间,频数就是多少,不用再细分每个死亡患者的具体死亡时间,可降低整理数据的难度。

因此,寿命表法适用于临床研究中的终点事件无法被有效、及时随访和大样本数据的生存分析。

② Kaplan-Meier法(又称乘积极限法)

SPSS官方解释又说了: Kaplan-Meier法与寿命表法的关键区别在于时间变量为连续变量,状态变量可以是分类变量或连续变量,因子和层次变量应为分类变量。

基于此,我们反推一下,可发现Kaplan-Meier法的要求需要时间变量为连续状态,就是说需要我们获取完整的、精确的生存资料。 Kaplan-Meier法本质是一个生存时间函数。

再举个例子,动物实验过程中,我们非常容易控制是动物数量、品系、性别的一致性,同时也冷非常准确及时地获取动物生存时间。有时,前脚刚出动物房,管理员就来电话说动物死了,这效率,杠杠的。此外,动物实验涉及的样本量一般不会特别大,就算一组动物20只,分5组,也才100只。

因此,Kaplan-Meier法比较适合动物实验这种小样本量的、观测记录较为完整的数据类或者大样本但未划分时间段的数据。

③ Cox 回归分析

SPSS官方解释贴心指出: Cox 回归数据分析时,其时间变量应是定量变量,但状态变量可以是分类或连续变量。

Cox回归分析本质是多因素分析,与之对应的上面的单因素分析(Kaplan-Meier法)。

理想状态下,我们非常希望有且只有1个因素影响生存率,便于我们更好地评价治疗作用。但现实往往不如人愿。临床研究中,经常会出现多个因素影响患者生存率,如果简单地套用单因素分析法,非常容易得出错误的研究结论。因此,我们必须要做Cox回归分析,充分评价观测因素以外的其它因素在患者生存率上回带来多大的影响。

举个例子。 评价新药和市售药治疗糖尿病时患者的生存率差异。我们都知道很多糖尿病患者都存在心梗、脑梗的风险,这些风险发生时均会导致患者死亡,必然影响我们最终的研究结论。此时即可采用Cox分析法。

重点来了。 尽管Cox回归分析看起来很符合实际操作情况,但是Cox回归分析也称为 Cox  比例风险模型 。

SPSS广泛统计中强调: 观察值应是独立的, 风险比应是时间恒定值 ;即,各个个案风险的比率不应随时间变化。后一个假设称为Cox 比例风险模型。

什么叫等比例风险? 预后因素对死亡风险的作用强度随着时间的变化需保持一致。

即,假设A、B两组糖尿病患者,分别给予新药和市售药,随访5年生存率。第1年A组风险死亡率是6%,B组是3%。第2年A组风险死亡率是10%,B组需为5%。此时才刚刚满足Cox风回归分析的前提。

验证是否为等比例风险的方法大致分两类。分类变量采用K-M生存曲线法查看是否存在交叉(若不交叉,则说明等比例风险);连续型变量采用残差散点图来判定(P>0.05表示)。(图例来自网络,侵删)

(K-M生存曲线法)

(残差散点图)

有人又会说了,这要求忒严格了吧,如果不是等比例风险呢?见下方。

④ Cox 依时协变量分析

若判定后发现不是等比例风险,说明影响影响因素在随着时间发生变化,此时可能需要采用带依时协变量的 Cox 过程。

感觉越说越远了......懵了吗朋友们