小伙伴们大家好!今天给大家分享下怎样用R语言来进行生存分析:
首先,我们需要安装survival包。这个包里有自带的数据集,我们选择肺癌lung数据集来进行示范。
#加载数据
install.packages('survival')
library(survival)
data(cancer)
data(lung)
这样就能把数据集加载好啦!接下来,我们先分别运用Cox回归进行单因素分析、多因素分析,看看对于因变量肺癌来说,什么是危险因素,什么是保护因素。
单因素分析Cox回归
#单因素
fit1 <- coxph(Surv(time,status)~sex,data=lung)
summary(fit1)
fit2 <- coxph(Surv(time,status)~age,data=lung)
summary(fit2)
单因素分析,顾名思义就是只有一个变量。单因素和多因素分析相辅相成。单因素分析可以初步探索预测变量与响应变量的关系。
生存分析里,存在着两个因变量。分别是time生存时间(一般以天数、小时等为单位),还有status生存状态(生存1、死亡0)。两个因变量缺一不可。
多因素分析Cox回归
#多因素
fit3 <- coxph(Surv(time,status)~sex+age,data=lung)
summary(fit3)
多因素分析,将多个因素同时加入回归,可以进一步排除其他混杂因素的影响。这样就能确定预测变量和响应变量的关系。
多因素分析结果表明,年龄从单因素时的显著变成了不显著(P>.05),OR值我们看exp(coef)那一列。不显著的因素就不用看OR值了,所以我们主要看看sex的OR值,也就是0.5986,小于1,说明性别编码为2(女性)对于肺癌来说是保护因素。
KM生存曲线绘制
#可视化install.packages('survminer')
library(survminer)
ggsurvplot(survfit(Surv(time,status)~sex,data=lung))
要画Kaplan-Meier生存曲线,就得加载survminer包。贼好用!颜色、坐标轴都可以自由设置,但其实,默认的已经很好看了。是不是与好多文献里的生存曲线类似?
这就是今天想跟大家演示的R语言生存分析的过程,以及KM曲线的绘制。觉得有帮助别忘了点个“在看”哦

