拓端数据tecdat|R语言生存分析: 时变竞争风险模型分析淋巴瘤患者

原文链接:http://tecdat.cn/?p=22422 

在本文中,我们描述了灵活的竞争风险回归模型。回归模型被指定为转移概率,也就是竞争性风险设置中的累积发生率。该模型包含Fine和Gray(1999)的模型作为一个特例。这可以用来对次分布危险的比例假设做拟合度测试(Scheike和Zhang 2008)。还可以为预测的累积发病率曲线构建置信区间。我们将这些方法应用于Pintilie(2007)的滤泡细胞淋巴瘤数据,其中竞争风险是疾病复发和没有复发的死亡。

工作实例:滤泡细胞淋巴瘤研究

我们考虑Pintilie(2007)的滤泡细胞淋巴瘤数据。该数据集由541名疾病早期的滤泡细胞淋巴瘤(I或II)患者组成,并接受单纯放疗(化疗=0)或放疗和化疗的联合治疗(化疗=1)。疾病复发或无反应和缓解期死亡是两个竞争风险。患者的年龄(年龄:平均=57,sd=14)和血红蛋白水平(hgb:平均=138,sd=15)也被记录。随访时间的中位数是5.5年。首先我们读取数据,计算死亡原因指标并对协变量进行编码。

  1.  
     
  2.  
    R> table(cause)
  3.  
    cause
  4.  
    0 1 2
  5.  
    193 272 76
  6.  
    R> stage <- as.numeric(clinstg == 2)
  7.  
    R> chemo <- as.numeric(ch == "Y")
  8.  
    R> times1 <- sort(unique(time[cause == 1]))

有272个(无治疗反应或复发)因疾病引起的事件,76个竞争性风险事件(无复发的死亡)和193个删减的个体。事件时间用dftime表示。变量times1给出了原因为 "1 "的事件时间。我们首先估计非参数累积发病率曲线进行比较。

我们指定事件时间并删减变量为cause == 0。回归模型只包含一个截距项(+1)。cause变量给出了与不同事件相关的原因。cause= 1指定我们考虑类型1的事件。计算/基于估计值的时间可以由参数times = times1给出。

图1(a)显示了估计的两种原因的累积发生率曲线。在图1(b)中,我们构建95%的置信区间(虚线)和95%的置信带。

  1.  
     
  2.  
    risk(Surv(dftime, cause == 0) ~ + 1,
  3.  
    causeS = 1, n.sim = 5000, cens.code = 0, model = "additive")

图1

  1.  
    R> fit <- cum(time, cause, group)
  2.  
    R> plot(fit)

子分布危险法和直接二项式模型法都是基于反概率的删减加权技术。在应用这种权重时,关键是删减权重的估计不能有偏差,否则累积发病率曲线的估计也可能有偏差。

在这个例子中,我们发现删减分布明显取决于协变量血红蛋白、阶段和化疗,并可以由Cox的回归模型很好地描述。Cox模型的拟合是通过累积残差来验证的,进一步的细节见Martinussen和Scheike(2006)。因此,对剔除权重使用简单的KaplanMeier估计可能会导致严重的偏差估计。因此,我们在调用中加入了cens.model = "cox "的选项,这就使用了Cox模型中竞争风险模型的所有协变量作为剔除权数。一般来说,反概率删减权重的回归模型可以用来提高效率(Scheike等人,2008)。

现在我们来拟合模型

我们首先拟合一个一般比例模型,允许所有协变量具有时变效应。在下面的调用中,只有模型(6)中的协变量x被定义。模型(6)中的协变量z是由一个const操作符指定的。

  1.  
    summary(outf)
  2.  
    OUTPUT:
  3.  
    Competing risks Model
  4.  
    Test for nonparametric terms
  5.  
    Test for non-significant effects
  6.  
    Supremum-test of significance p-value H_0: B(t)=0
  7.  
    (Intercept) 3.29 0.0150
  8.  
    stage 5.08 0.0000
  9.  
    age 4.12 0.0002
  10.  
    chemo 2.79 0.0558
  11.  
    hgb 1.16 0.8890
  12.  
    Test for time invariant effects
  13.  
    Kolmogorov-Smirnov test p-value H_0:constant effect
  14.  
    (Intercept) 8.6200 0.0100
  15.  
    stage 1.0400 0.0682
  16.  
    age 0.0900 0.0068
  17.  
    chemo 1.7200 0.0004
  18.  
    hgb 0.0127 0.5040
  19.  
    Cramer von Mises test p-value H_0:constant effect
  20.  
    (Intercept) 3.69e+01 0.0170
  21.  
    stage 2.52e+00 0.0010
  22.  
    age 4.26e-03 0.0014
  23.  
    chemo 1.50e+00 0.0900
  24.  
    hgb 2.64e-04 0.4220

基于非参数检验的显著性检验显示,在非参数模型中,阶段和年龄是显著的,化疗是较显著的(p = 0.056),血红蛋白是不显著的(p = 0.889)。

图2

绘制估计的回归系数αj (t)及其95%的置信带,并分别绘制常数效应的观察检验过程和空值下的模拟检验过程。

R> plot(outf, score = 1)

图2显示了这些效应并不随时间变化而变化,在早期的时间段内效应相当明显。95%的指向性置信区间,以及95%的置信区间。

图3显示了相关的检验过程,用于决定时变效应是否具有显著的时变性,或者是否可以接受H0 : αj (t) = βj。这些图的摘要在输出中给出,我们看到阶段和化疗显然是时变的,因此与Fine-Gray模型不一致。Kolmogorov-Smirnov和Cramer von Mises检验统计数字对检验过程的两种不同总结是一致的,总的结论是三个变量都没有比例的Cox类型效应。我们看到血红蛋白被常数很好地描述,因此我们考虑用血红蛋白具有常数效应,其余协变量具有时变效应的模型。

图3

  1.  
     
  2.  
    R> summary(outf1)
  3.  
    OUTPUT:
  4.  
    Competing risks Model
  5.  
    Test for nonparametric terms
  6.  
    Test for non-significant effects
  7.  
    Supremum-test of significance p-value H_0: B(t)=0
  8.  
    (Intercept) 5.46 0
  9.  
    stage 5.18 0 age 4.20 0
  10.  
    chemo 3.89 0
  11.  
    Test for time invariant effects
  12.  
    Kolmogorov-Smirnov test p-value H_0:constant effect
  13.  
    (Intercept) 10.100 0.000
  14.  
    stage 1.190 0.048
  15.  
    age 0.101 0.004
  16.  
    chemo 1.860 0.000
  17.  
    Cramer von Mises test p-value H_0:constant effect
  18.  
    (Intercept) 79.90000 0.000
  19.  
    stage 1.84000 0.006
  20.  
    age 0.00583 0.000
  21.  
    chemo 2.53000 0.000
  22.  
    Parametric terms :
  23.  
    Coef. SE Robust SE z P-val
  24.  
    const(hgb) 0.00195 0.00401 0.00401 0.486 0.627
  25.  
     
  1.  
     
  2.  
    Competing risks Model
  3.  
    Test for nonparametric terms
  4.  
    Test for non-significant effects
  5.  
    Supremum-test of significance p-value H_0: B(t)=0
  6.  
    (Intercept) 6.32 0
  7.  
    Test for time invariant effects
  8.  
    Kolmogorov-Smirnov test p-value H_0:constant effect
  9.  
    (Intercept) 1.93 0
  10.  
    Cramer von Mises test p-value H_0:constant effect
  11.  
    (Intercept) 14.3 0
  12.  
    Parametric terms :
  13.  
    Coef. SE Robust SE z P-val
  14.  
    const(stage) 0.45200 0.13500 0.13500 3.340 0.000838
  15.  
    const(age) 0.01450 0.00459 0.00459 3.150 0.001610
  16.  
    const(chemo) -0.37600 0.18800 0.18800 -2.000 0.045800
  17.  
    const(hgb) 0.00249 0.00401 0.00401 0.622 0.534000

我们注意到,血红蛋白的影响与更合适模型(如上图所示)的影响几乎相等。但由于模型中其他协变量的不适合,估计值可能有严重的偏差,因此可能误导了数据的重要特征。最后,我们将FG模型的预测与半参数模型的预测进行比较,后者对效应的描述更为详细。我们考虑对下面由新数据分配定义的两种不同的病人进行预测。患者类型I:疾病I期(阶段=0),40岁,没有化疗治疗(化疗=0),患者类型II:疾病II期(阶段=1),60岁,放疗加化疗联合治疗(化疗=1)。

  1.  
    R> newdata <- data.frame(stage = c(0, 1), age = c(40, 60), chemo = c(0, 1),
  2.  
    + hgb = c(138, 138))
  3.  
    R> predict(out, newdata)

为了指定计算预测的数据,我们可以指定一个newdata参数。

基于该模型的预测可能不是单调的。我们绘制了没有点状置信区间(se = 0)和没有置信带(uniform = 0)的预测。图4(a)中的预测是基于灵活的模型,而图4(b)中的预测是基于FG模型的。I型和II型病人的复发累积发生率曲线分别用实线和虚线表示。图5(a)比较了基于灵活模型和FG模型对I型患者的预测结果。同样地,图5(b)比较了对II型病人的预测。两个预测值周围的断线代表了基于灵活模型的置信区。

图4

  1.  
    R> par(mfrow = c(1, 2))
  2.  
    R> plot(f1, se = 0, uniform = 1, col = 1, lty = 1
  3.  
    R> plot(fg, new = 0, se = 0, uniform = 0, col = 2, lty = 2,

较高的疾病阶段、较高的年龄和联合治疗会导致较高的累积发病率,其影响在时间段的早期更为明显(图4(a)和图2)。另一方面,化疗在时间段的最初增加了累积发病率,随后降低了发病率(图4(a)和图2)。图5显示,FG模型不能准确地模拟时变效应。尽管有这些差异,在这种情况下,总体预测有些类似,特别是当考虑到估计的不确定性。然而,协变量的时变行为显然是重要的。

图5

4. 讨论

本文实现了累积发病率曲线的灵活竞争风险回归模型,可以详细分析协变量效应如何预测累积发病率,并允许协变量的时间变化效应。可以检查较简单的模型的拟合度,同时可以产生带有置信区间和置信带的预测结果,这对研究人员很有用。


最受欢迎的见解

1.R语言绘制生存曲线估计|生存分析|如何R作生存曲线图

2.R语言生存分析可视化分析

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

4.r语言中使用Bioconductor 分析芯片数据

5.R语言生存分析数据分析可视化案例

6.r语言ggplot2误差棒图快速指南

7.R 语言绘制功能富集泡泡图

8.R语言如何找到患者数据中具有差异的指标?(PLS—DA分析)

9.R语言中的生存分析Survival analysis晚期肺癌患者4例

▍关注我们 【大数据部落】第三方数据服务提供商,提供全面的统计分析与数据挖掘咨询服务,为客户定制个性化的数据解决方案与行业报告等。 ▍咨询链接:http://y0.cn/teradat ▍联系邮箱:3025393450@qq.com
原文地址:https://www.cnblogs.com/tecdat/p/14837762.html