1. survminer
包的surv_cutpoint()
函数
1.1 加载r包及数据
library(survival)
library(survminer)
data=
1.2 计算cutoff
res.cut <- surv_cutpoint(data, #数据集
time = "time", #生存时间
event = "event", #生存状态
variables = c("cutoff1", "cutoff2", "cutoff3") #需要计算的数据列名
)
summary(res.cut) #查看数据最佳截断点及统计量
1.3 展示数据分布
plot(res.cut, "cutoff1", palette = "npg")
1.4 根据截点分类数据
res.cat <- surv_categorize(res.cut)
head(res.cat)
> head(res.cat)
time event DEPDC1 WHSC1 CRIM1
GSM50986 69.24 0 high low high
GSM50988 66.43 0 low low low
GSM50989 66.50 0 low high high
GSM50990 42.67 1 low high low
GSM50991 65.00 0 low low low
GSM50992 65.20 0 high low low
1.5 绘制生存曲线
fit <- survfit(Surv(time, event) ~DEPDC1, data = res.cat)#拟合生存分析
#绘制生存曲线并显示P值
ggsurvplot(fit,
data = res.cat,
risk.table = TRUE,
pval = T)