Cox模型的基本假设
Cox比例风险模型的前提条件是:在某因素下,个体的风险比例在不同时间点都是定值。
Cox PH假设检验
一般我们使用Schoenfeld残差来检验比例风险假设(还可以简单的通过生存曲线是否交叉来粗略判断下),如果数据满足Cox回归模型,那么Schoenfeld残差和生存时间的秩次之间无明显的相关性,也就是说Schoenfeld残差与生存时间无明显的一致变化趋势,这里通过survival包的cox.zph()函数即可判断。
library("survival")
library("survminer")
fit <- coxph(Surv(time, status) ~ age + sex, data = data.set)
test.ph <- cox.zph(fit)
从检验结果test.ph中协变量的P值可进行判断,这里的原假设为满足Cox PH假设,因此,若P<0.05,则拒绝原假设,即不满足Cox PH假设。
此外我们还可以通过Schoenfeld残差与时间的关系图来诊断模型是否满足前提,理论上如果满足的话,Schoenfeld残差应该与时间无明显的趋势,使用ggcoxzph函数,即ggcoxzph(test.ph)。
解决方法
若不满足Cox PH假设,可以采用如下方法进行解决:
Adding covariate*time interaction(增加协变量与时间的交互关系)
Stratification(分层)