(燃烧)数据的 Cox 比例风险模型

Cox proportional hazard model on (burn) data

描述了一项研究,该研究评估了中西部大型大学医疗中心消毒剂实践的协议变更。该研究的主要兴趣是比较两种 body 清洁方法。第一种方法仅在 1983 年 1 月至 1984 年 6 月期间使用,包括常规沐浴护理方法(初始表面去污 10% povidone-iodine,然后定期用 Dial 肥皂沐浴)。从 1984 年 6 月到 1985 年 12 月研究期结束,body 最初使用 4% 葡萄糖酸氯己定进行清洁。 Eighty-four组患者接受新型沐浴液洗必泰,对照组70例患者接受常规沐浴护理聚维酮碘。数据集中包含一个协变量,用于测量燃烧的总表面积。 数据是(燃烧)。我想测试: 1- 两组生存功能的任何差异。 2- 根据烧伤总面积调整的两组生存函数的任何差异。

library(KMsurv)
data()
data(burn)
burn

library(survival)

我知道要使用的函数是coxph(),但我不确定我应该测试哪些组(根据以上信息)。他们是T1和D2吗? 所以对于 1,Coxfit1<-coxph(Surv(T1,D2)~group, data = burn)? 对于 2,Coxfit2<-coxph(Surv(T1,D2)~Z4, data = burn)?

这段代码在做什么?

for(i in 1:154){
  if (burn$??[i]==2)
    burn$Z1[i]<-1
  else burn$Z1[i]<-0
}

for(i in 1:154){
  if (burn$??[i]==3)
    burn$Z2[i]<-1
  else burn$Z2[i]<-0
}

??burn告诉你变量的含义; Z1和Z4好像是你要的:

此数据框包含以下列:

观察 观察数

Z1 治疗:0-常规沐浴 1-Body清洁

Z2 性别(0=男 1=女)

Z3 种族:0=非白人 1=白人

Z4 燃烧总表面积的百分比

Z5 烧伤部位指示器:头 1=是,0=否

Z6 烧伤部位指标:臀部 1=是,0=否

Z7 燃烧部位指示器:trunk 1=yes, 0=no

Z8 烧伤部位指示器:大腿 1=是,0=否

Z9 烧伤部位指示器:小腿 1=是,0=否

Z10 烧伤部位指标:呼吸道 1=是,0=否

Z11 烧伤类型:1=化学,2=烫伤,3=电,4=火焰

T1 切除时间或学习时间

D1 切除指标:1=是 0=否

T2 预防性抗生素治疗时间或学习时间

D2 预防性抗生素治疗:1=是 0=否

T3 金黄色葡萄球菌感染时间或学习时间

D3 金黄色葡萄球菌感染:1=是 0=否

来源 Klein 和 Moeschberger (1997) 删失和截断数据的生存分析技术,施普林格。一田等人。状态。医学。 12 (1993): 301-310.

编辑: 在您的情况下,常规沐浴和 body 清洁 (Z1) 之间存在显着差异,但在单变量分析中烧伤总表面积百分比 (Z4) 并不显着。

library(KMsurv)
library(survival)
library(survminer)
#> Loading required package: ggplot2
#> Loading required package: ggpubr
#> Loading required package: magrittr
data(burn)

## Univariate Cox regression analysis to see whether Z1 and Z4 are significant:
res.cox <- coxph(Surv(T1, D1) ~ Z1, data = burn)
summary(res.cox)
#> Call:
#> coxph(formula = Surv(T1, D1) ~ Z1, data = burn)
#> 
#>   n= 154, number of events= 99 
#> 
#>      coef exp(coef) se(coef)     z Pr(>|z|)   
#> Z1 0.5504    1.7339   0.2072 2.656   0.0079 **
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#>    exp(coef) exp(-coef) lower .95 upper .95
#> Z1     1.734     0.5767     1.155     2.602
#> 
#> Concordance= 0.599  (se = 0.027 )
#> Likelihood ratio test= 7.24  on 1 df,   p=0.007
#> Wald test            = 7.06  on 1 df,   p=0.008
#> Score (logrank) test = 7.23  on 1 df,   p=0.007
ggsurvplot(surv_fit(Surv(T1, D1) ~ Z1, data = burn), data = burn,
           conf.int = TRUE, pval = TRUE)


res.cox <- coxph(Surv(T1, D1) ~ Z4, data = burn)
summary(res.cox)
#> Call:
#> coxph(formula = Surv(T1, D1) ~ Z4, data = burn)
#> 
#>   n= 154, number of events= 99 
#> 
#>         coef exp(coef)  se(coef)      z Pr(>|z|)
#> Z4 -0.005108  0.994905  0.005408 -0.945    0.345
#> 
#>    exp(coef) exp(-coef) lower .95 upper .95
#> Z4    0.9949      1.005    0.9844     1.006
#> 
#> Concordance= 0.529  (se = 0.034 )
#> Likelihood ratio test= 0.94  on 1 df,   p=0.3
#> Wald test            = 0.89  on 1 df,   p=0.3
#> Score (logrank) test = 0.89  on 1 df,   p=0.3

## Multivariate Cox regression analysis to see whether Z1 and Z4 remain significant
## here, univariate Z4 was n.s., so not that relevant...
res.cox <- coxph(Surv(T1, D1) ~ Z1 + Z4, data = burn)
summary(res.cox)
#> Call:
#> coxph(formula = Surv(T1, D1) ~ Z1 + Z4, data = burn)
#> 
#>   n= 154, number of events= 99 
#> 
#>         coef exp(coef)  se(coef)      z Pr(>|z|)  
#> Z1  0.534232  1.706138  0.208651  2.560   0.0105 *
#> Z4 -0.003458  0.996548  0.005435 -0.636   0.5246  
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#>    exp(coef) exp(-coef) lower .95 upper .95
#> Z1    1.7061     0.5861     1.133     2.568
#> Z4    0.9965     1.0035     0.986     1.007
#> 
#> Concordance= 0.606  (se = 0.033 )
#> Likelihood ratio test= 7.66  on 2 df,   p=0neither.02
#> Wald test            = 7.44  on 2 df,   p=0.02
#> Score (logrank) test = 7.61  on 2 df,   p=0.02

对于问题 1,您想要检验 Z1 变量水平之间的生存分布*。数据集中没有名为 group 的变量。 Z1=0表示常规沐浴,Z1=1表示body清洁。您可能希望在继续之前将所有 Z 变量转换为因子(Z4 除外)。

library(survival)
library(KMsurv)
library (dplyr)

burn$Z1 <- factor(burn$Z1, label=c("Routine bathing", "Body cleansing"))

* 生存这个词需要澄清一下。大概是第一次金黄色葡萄球菌感染 (D3) 或研究时间(如果没有事件发生)的时间。时间在变量 T3 中。

执行测试的命令是:

coxph(Surv(T3,D3) ~ Z1, data=burn)
                    coef exp(coef) se(coef)      z      p
Z1Body cleansing -0.5614    0.5704   0.2934 -1.914 0.0557

对于问题 2,Z4 包含燃烧总表面积的百分比,即要调整的变量。

coxph(Surv(T3,D3)~Z1+Z4, data=burn)

                      coef exp(coef)  se(coef)      z     p
Z1Body cleansing -0.524764  0.591695  0.295769 -1.774 0.076
Z4                0.007248  1.007275  0.007145  1.015 0.310

因此,接受常规沐浴和 body 清洁的人在第一次感染之前的时间似乎没有差异。