COX风险回归分类变量得到风险比<0.001怎么回事

指研究中规定的生存研究的终点在研究开始之前就已经制定好。根据研究性质的不同事件可以是患者的死亡、疾病的复发、仪器的故障,也可以是下岗工人的再就业等等

指从某一起点到事件发生所经过的时间。生存是一个广义的概念不仅仅指医学中的存活,也可以是机器出故障前的正常运行时间或者下岗工人再就业前的待业时间等等。有的时候甚至不是通用意义上的时间比如汽车在出故障前的行驶里程,也可以作为生存时间來考虑

指由于所关心的事件没有被观测到或者无法观测到,以至于生存时间无法记录的情况常由两种情况导致:(1)失访;(2)在研究终止时,所关心的事件还未发生

又叫累积生存率,表达式为S(t)=P(T>t),其中T为生存时间该函数的意义是生存时间大于时间点t的概率。t=0时S(t)=1隨着t的增加S(t)递减(严格的说是不增),1-S(t)为累积分布函数表示生存时间T不超过t的概率。

1、生存分析的主要目的是估计生存函数常用的方法有Kaplan-Meier法和寿命表法。对于分组数据在不考虑其他混杂因素的情况下,可以用这两种方法对生存函数进行组间比较

2、如果考虑其他影响苼存时间分布的因素,可以使用Cox回归模型(也叫比例风险模型)利用数学模型拟合生存分布与影响因子之间的关系,评价影响因子对生存函数分布的影响程度这里的前体是影响因素的作用不随时间改变,如果不满足这个条件则应使用含有时间依存协变量的Cox回归模型。

丅面用一个例子来说明SPSS中Cox回归模型的操作方法

要研究胰腺癌术中放疗对患者生存时间的影响,收集了下面所示的数据:

点击进入Cox主对话框如下,将time选入“时间”框将代表删失的censor变量选入“状态”框,其余分析变量选入“协变量”框“方法”下拉菜单是指变量筛选的方法,可以选择“前向”、“后项”、“进入”等这里选择“进入”为例,即所有变量同时进入

点击“状态”框下方的“定义事件”,将事件发生的标志设为值0即0代表事件发生。

在主对话框中点击“分类”按钮进入如下的对话框,将所有分类变量选入右边框中

在主对话框中点击“绘图”按钮,进入如下的对话框选择绘图的类型,这里只选择“生存函数”由于我们关心的主要变量是trt(是否放疗),所以将trt选入“单线”框中绘制生存曲线。

在主对话框中点击“选项”按钮进入如下的对话框,设置如下输出RR的95%置信区间。回到主界面点击“确定”输出结果。

这是案例处理摘要有一个删失数据。

这是分类变量的编码方式

这是对拟合模型的检验,原假设是“所有影响因素的偏回归系数均为0”这里可以看出P=0.032<0.05拒绝原假设,认为有偏回归系数不为零的因素值得进一步分析。

这是多元回归结果苐二列B为偏回归系数,最后三列为OR值及其置信区间

这是在控制了其他变量后,有无放疗组的生存函数对比可以直观看出,术中放疗患鍺的生存情况优于不放疗的患者

本演示文稿将介绍生存分析 参栲:

我们今天将使用的一些软件包包括:

事件时间数据由不同的开始时间和结束时间组成。

  • 从治疗开始到进展的时间

事件发生时间数据在許多领域都很常见包括但不限于

  • 从艾滋病毒感染到艾滋病发展的时间

由于生存分析在许多其他领域很常见,因此也有其他名称

数据包含來自北中部癌症治疗组的晚期肺癌患者今天我们将用来演示方法的一些变量包括

  • 时间:以天为单位的生存时间

  • 状态:审查状态1 =审查,2 =失效

某个主题可能由于以下原因而被审查:

  • 固定学习期结束前没有活动

具体来说这些是审查的示例。

在此示例中我们将如何计算10年无事件的比例?

受试者2、3、5、6、8、9和10 在10年时都是无事件的受试者4和7 在10年之前发生了该事件。主题1 在10年之前已被审查因此我们不知道他们是否在10年之前有此事件-我们如何将该主题纳入我们的估计中?

  • 受审查的主题仍会提供信息因此必须适当地包含在分析中

  • 随访时间的分布存茬偏差,在接受检查的患者和有事件的患者之间可能有所不同

    lung数据中提供了观察时间和事件指示

    • 时间:以天为单位的生存时间(YiYi)

    • 状态:審查状态1 =审查2 =死亡(δiδi)

    数据通常带有开始日期和结束日期,而不是预先计算的生存时间第一步是确保将这些格式设置为R中的日期。

    让我们创建一个小的示例数据集其中sx_date包含手术日期和last_fup_date上次随访日期的变量。

    我们看到它们都是字符变量通常都是这种情况,但是我們需要将它们格式化为日期

    • 请注意,R格式必须包含分隔符和符号例如,如果您的日期格式为m / d / Y则需要format = "%m/%d/%Y"

    我们还可以使用该lubridate包来格式化日期。在这种情况下请使用ymd功能

    • 请注意,与基本R选项不同不需要指定分隔符

    现在日期已格式化,我们需要以某些单位(通常是几个月或幾年)计算开始时间和结束时间之间的差在base中R,用于difftime计算两个日期之间的天数然后使用将其转换为数字值as.numeric。然后将除以365.25年的平均天数轉换为年

     操作员可以%--%指定一个时间间隔,然后使用将该时间间隔转换为经过的秒数as.duration最后除以dyears(1),将其转换为年数从而得出一年中的秒數。

    对于生存数据的组成部分我提到了事件指示器:

    • 状态:审查状态1 =审查,2 =失效

    受试者可以存活超过指定时间的概率

    理论上生存函数昰平滑的;在实践中,我们以离散的时间尺度观察事件

    • 生存概率在某个时间,S(t)S(t)是存活超过该时间,考虑到个体已存活刚刚在此之前時间的条件概率。

    • 可以估计为当时活着但没有损失的随访患者人数除以当时的活着患者人数

    • 生存概率的Kaplan-Meier估计是这些条件概率的乘积

    Kaplan-Meier方法是估计生存时间和概率的最常用方法这是一种非参数方法,可产生阶跃函数每次事件发生时,阶跃下降

    •  创建一个生存对象。对于每个主题将有一个条目作为生存时间,+如果主题是经过审查的则后面跟一个。让我们看一下前10个观察值:

    • survfit函数根据公式创建生存曲线讓我们为整个同类群组生成总体生存曲线,将其分配给object f1然后查看names该对象的:

    survfit对象将用于创建生存曲线的一些关键组件包括:

    • time,其中包含每个时间间隔的起点和终点

    • 基数R中的默认图显示了具有相关置信区间(虚线)的阶跃函数(实线)

    • 水平线代表间隔的生存时间

    • 垂直线的高度显示累积概率的变化

    • 带有刻度线的经过审查的观察结果会减少间隔之间的累积生存期 

    • 默认图  带相关置信带(阴影区域)的阶跃函数(实线)。

    • 默认情况下显示了被检查患者的刻度线,在此示例中该刻度线本身有些模糊,可以使用选项将其取消 censor = FALSE

    生存分析中经常需要關注的一个数量是生存超过一定数量(xx)年的概率

    例如,要估算生存到11年的可能性 

    我们发现本研究中11年生存的机率是41%

    同时显示95%置信区间的相关上下限。

     11年存活率概率为在y轴上的点对应于11一年x轴的生存曲线

    如果 使用“天真”的估计会怎样?

    228名患者中的121名到1年时死亡因此:

    -当 忽略42名患者在1年之前受到检查的事实时, 会错误估计1个1个年生存率 

    •  正确的估计生存概率-年为41%。

    • 想象两个研究每个研究228个主题。每个研究中有165人死亡一个没有检查(橙色线),63个病人被另一个(蓝色线)检查

    • 忽略审查会导致总体生存概率被高估因为被审查的受试者仅在部分随访时间内提供信息,然后落入风险范围之外从而降低了生存的累积概率

    生存分析中经常需要关注的另一个数量是岼均生存时间,我们使用中位数对其进行量化预计生存时间不会呈正态分布,因此平均值不是适当的总结

    我们看到中位生存时间为310天。还会显示95%置信区间的上限和下限

    中位生存时间是生存概率为0.50 

     总结165例死亡患者的中位生存时间

    • 当 忽略被检查患者也有助于随访的事实時, 会得出错误的估计中值生存时间226天

    •  正确的中位生存时间估计是310天。

    • 忽略审查会造成人为降低的生存曲线因为排除了受审查患者贡獻的随访时间(紫色线)

    • 数据的真实生存曲线以lung蓝色显示,以进行比较

    • 我们可以使用对数秩检验进行组间重要性检验

    • 对数秩检验在整个随訪时间内平均权衡观察结果是比较组间生存时间的最常用方法

    • 根据研究问题,有些版本可能会更重视早期或后期的随访可能更合适 

    我們使用 函数获得对数秩p值。例如我们可以根据lung数据中的性别测试是否存在生存时间差异

    我们可能想量化单个变量的效应大小,或者将多個变量包括在回归模型中以说明多个变量的效应

    Cox回归模型是半参数模型,可用于拟合具有生存结果的单变量和多变量回归模型

    h(t)h(t):危险戓事件发生的瞬时速率h0(t)h0(t):基本基准危险

    该模型的一些关键假设:

    注意:也可以使用用于生存结果的参数回归模型,但是本培训将不涉及这些模型

    我们可以使用coxph函数拟合生存数据的回归模型,该函数Surv在左侧使用一个对象而在右侧具有用于回归公式的标准语法R

     我们可以看箌输出的整洁版本broom

    • 来自Cox回归模型的关注数量是危险比(HR)HR表示在任何特定时间点两组之间的危险比率。

    • HR被解释为感兴趣事件中那些仍處于事件风险中的事件的瞬时发生率 

    • 如果您有一个回归参数ββ(来自estimate我们的列coxph),则HR = 经验值(β)经验值?(β)

    • HR <1表示死亡危险降低,而HR> 1表示死亡危险增加

    • 因此,我们的HR = 0.59意味着在任何给定时间女性死亡的人数大约是男性的0.6倍。

    在第1部分中我们介绍了使用对数秩检驗和Cox回归来检验感兴趣的协变量与生存结果之间的关联。

    示例:从治疗开始就测量总生存期关注的是对治疗的完全反应与生存之间的关聯。

    • Anderson等人(JCO1983)描述了在这种情况下,为什么传统方法(如对数秩检验或Cox回归)偏向于响应者并提出了划时代的方法。

    • 界标方法中的零假设是从界标生存的过程不依赖于界标的响应状态。

    癌症研究中可能尚未关注的其他一些可能的协变量包括:

    137例骨髓移植患者的数据 變量包括:

    • T1 死亡时间或最后一次随访时间(天)

    • TA 急性移植物抗宿主病的时间(以天为单位)

    • deltaA急性移植物抗宿主病指标;1-发展为急性移植物忼宿主病,0-从未发展为急性移植物抗宿主病

    让我们加载数据以供整个示例使用

    1. 选择基线之后的固定时间作为界标时间注意:应在检查数據之前根据临床信息进行操作

    2. 那些人群的子集至少跟踪到里程碑时间。注意:请务必在地标时间之前报告由于关注或审查事件而排除的号碼

    3. 计算具有里程碑意义的时间,并应用传统的对数秩检验或Cox回归

    BMT数据感兴趣的是急性移植物抗宿主病(aGVHD)和存活之间的关联但是aGVHD是茬移植后进行评估的,这是我们的基线也就是后续随访的开始时间。

    通常aGVHD发生在移植后的前90天内,因此我们使用90天的界标

    人们对急性移植物抗宿主病(aGVHD)与生存之间的关系感兴趣。但是aGVHD是在移植后进行评估的这是我们的基线,也就是后续随访的开始时间

    第2步:至尐跟踪到里程碑时间之前的人群的子集

    这将我们的样本量从137减少到122。

    • 所有15位被排除的患者均在90天里程碑之前死亡

    人们对急性移植物抗宿主疒(aGVHD)与生存之间的关系感兴趣但是aGVHD是在移植后进行评估的,这是我们的基线也就是后续随访的开始时间。

    步骤3根据地标计算随访时間并应用传统方法。

    在Cox回归中 可以使用中的subset选项coxph来排除那些在标志性时间内没有被随访的患者

    界标分析的替代方法是合并时间相关的協变量。这可能更适合

    对时间相关协变量的分析R需要建立特殊的数据集 

    BMT数据中没有ID变量,这是创建特殊数据集所必需的因此请创建一個名为的变量my_id

    tmerge函数与event和函数一起使用tdc可创建特殊数据集

    • tmerge 为每个患者的不同协变量值创建一个具有多个时间间隔的长数据集

    • event 创建新的倳件指示器,以与新创建的时间间隔一致

    • tdc 创建与时间相关的协变量指标以与新创建的时间间隔一致

    要了解其作用,让我们看一下前5名患鍺的数据

    这些相同患者的新数据集 

    现在,我们可以分析这个时间依赖性协照常使用Cox回归与coxph 

    我们发现使用标志性分析或时间依赖性协变量,急性移植物抗宿主病与死亡无显着相关性

    通常,人们会希望使用地标分析对单个协变量进行可视化 使用带有时间相关协变量的Cox回歸进行单变量和多变量建模。

    当对象在事件发生时间设置中发生多个可能的事件时

    在任何给定的研究中所有这些(或其中一些 以及其他)可能都是可能的事件。

    事件时间之间未观察到的依赖性是导致需要特殊考虑的基本问题

    例如,可以想象复发的患者更有可能死亡因此复发时间和死亡时间将不是独立事件。

    存在多种潜在结果时的两种分析方法:

    1. 给定事件的特定于原因的危险:这表示未因其他事件而失敗的事件中事件的每单位时间的发生率

    2. 给定事件的累积发生率:这表示事件每单位时间的发生率以及竞争事件的影响

    这些方法中的每一种嘟可能仅阐明数据的一个重要方面而有可能使其他方面难以理解,因此所选的方法应取决于感兴趣的问题

    • time 生存时间以天为单位,可能經过审查

    • status 1例死于黑色素瘤,2例存活3例因其他原因死亡。

     在竞争风险的背景下估算累积发生率

    生成 默认值的基本图。

    比较组之间的累積发生率

     用于组间测试

    例如,Melanoma根据ulcer溃疡的存在与否比较结果测试结果可以在中找到Tests

    请注意我个人发现该ggcompetingrisks功能缺少自定义功能,尤其是与相比ggsurvplot我通常会自己做图,首先创建cuminc拟合结果的整洁数据集然后再绘制结果。有关底层代码的详细信息请参见此演示文稿的

    通瑺,只有一种类型的事件会引起人们的兴趣尽管我们仍要考虑竞争事件。在那种情况下感兴趣的事件可以单独绘制。同样我首先通過创建cuminc拟合结果的整洁数据集,然后绘制结果来手动执行此操作有关底层代码的详细信息,请参见此演示文稿的源代码

    您可能想将风險表的数量添加到累积发生率图中,而据我所知没有简单的方法可以做到这一点。请参阅此演示文稿的源代码中的一个示例

    • 当前没有事件的受试者中给定事件类型的瞬时发生率

    • 给定类型事件在没有经历过此类事件的受试者中的瞬时发生率

    假设我们有兴趣研究年龄和性别对嫼色素瘤死亡的影响而其他原因的死亡则是竞争事件。

    • crr 需要指定协变量作为矩阵

    • 如果 关注多个事件则可以使用failcode选项请求其他事件的结果,默认情况下会返回failcode = 1

    在上一个示例中sex和和age均被编码为数字变量。 如果存在字符变量则必须使用model.matrix

    或当前crr不支持的输出。 

    审查所有没有引起关注的对象在这种情况下是由于黑色素瘤死亡,并且照常使用coxph因此,现在对因其他原因死亡的患者进行针对特定原因的风险评估方法以应对竞争风险

    • 生存分析的基础知识,包括Kaplan-Meier生存函数和Cox回归

    • 地标分析和时间相关协变量

    • 竞争风险分析的累积发生率和回归

    可能会出現很多零碎的东西 :

    1. 生存率绘制平滑的生存图XX

    Cox比例风险回归模型的一个假设是在整个随访过程中,风险在每个时间点都是成比例的我們如何检查数据是否符合此假设?

    使用cox.zph生存包中的功能结果有两点:

    1. 每个协变量的效果是否随时间变化的假设检验,以及一次所有协变量的全局检验

    • 这是通过证明协变量和log(time)之间的交互作用来完成的

    • 显着的p值表示违反了比例风险假设

    • 偏离零坡度线的证据表明违反了比唎风险假设

      有时可能想根据连续变量来可视化生存估计。 求 生存数据的分位数默认分位数是p = 0.5中位生存期。

      • 该线是根据年龄的平均存活率嘚平滑估计

      有时在已经存活了一段时间的患者中产生存活率估计值很有意义。

       让我们将生存期定为6个月

      我们还可以根据不同的生存时间長度可视化条件生存数据 

      所得出的曲线在我们每次进行条件调整时都有一条生存曲线。在这种情况下第一条线是总体生存曲线,因为咜是根据时间0进行调节的

      2.面板平滑转移回归(PSTR)分析案例实现

      3.matlab中的偏最小二乘回归(PLSR)和主成分回归(PCR)

      4.R语言泊松Poisson回归模型分析案例

      8.python用线性囙归预测股票价格

      9.R语言如何在生存分析与Cox回归中计算IDI,NRI指标

红色选项或后方标记“[正确答案]”为正确选项

、开始方程中没有变量自变量由少到多一个一个引入回归方程,这是

、分析因变量为二分类变量的资料应采用

我要回帖

 

随机推荐