我使用survival
包运行Cox回归来计算暴露A的死亡率风险比。我发现age
变量违反了比例风险假设(cox.zph
)并使用strata(age)
对其他模型中的年龄进行分层。
我需要age
变量的参数估计,以及方差和协方差矩阵(计算速率提升期)...而且我不知道在哪里找到它们!
我错过了什么,或者我误解了strata
正在做什么?
这是一个可重现的示例,使用lung
包中的survival
数据。
library(survival)
我创建了生存对象并使用非分层年龄变量进行第一次Cox回归。
lung$SurvObj <- with(lung, Surv(time, status == 2))
coxreg1 <- coxph(SurvObj ~ age + sex, data = lung)
因此,我得到参数估计的系数,方差和协方差矩阵。
> coxreg1$coefficients
age sex
0.01704533 -0.51321852
> vcov(coxreg1)
age sex
age 8.506877e-05 8.510634e-05
sex 8.510634e-05 2.804217e-02
现在,如果使用分层年龄变量进行第二次回归,我不会得到任何系数估计,方差或协方差。
coxreg2 <- coxph(SurvObj ~ strata(age) + sex, data = lung)
> coxreg2$coefficients
sex
-0.64471
> vcov(coxreg2)
sex
sex 0.0449369
感谢您的帮助!
答案 0 :(得分:2)
当您使用变量进行分层时,您不会得到任何系数估计值。相反,估计不同年龄组的单独基线危害。 分层Cox回归的本质是拟合每个层次具有不同基线危险的模型。