用survreg()和gsurvplot()绘制生存分析置信区间。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用survreg()和gsurvplot()绘制生存分析置信区间。相关的知识,希望对你有一定的参考价值。
是否可以在用gsurvplot_df()创建的生存分析的可视化中加入置信区间?我找了几个小时才找到答案,但没有找到任何关于为 "survreg "类对象添加置信区间的内容。
我创建了一系列生存曲线,按2个因素类协变量分解。URM状态(urm或非urm)和角色(商业、技术(非eng)和工程),从而创建了6条总曲线。一切看起来都很好,但我想加入置信区间,以帮助解释合理的群体差异和归结为预测错误的小差异。
我试着在ggsurvplot_df()调用中加入conf.int = TRUE和其他各种版本,但我总是收到错误信息。
Error in unit(x, default.units) : 'x' and 'units' must have length > 0
我不知道这意味着什么... ...
请看下面我创建的没有置信区间的图的代码。
library(survival)
library(survminer)
library(reshape2)
wb_curve <- survreg(Surv(tenure, terminated) ~ role_type + urm, data = data) #including covariates urm and role_type
newdat <- expand.grid(role_type = levels(data$role_type),
urm = levels(data$urm))
time_point <- predict(wb_curve, type = "quantile", p = (1 - surv_prob), newdata = newdat)
surv_wbcurve_wide <- cbind(newdat, time_point)
surv_wbcurve_long <- melt(surv_wbcurve_wide, id.vars = c("role_type", "urm"), variable.name = "surv_id", value.name = "time")
surv_wbcurve_long$surv <- surv_prob[as.numeric(surv_wbcurve_long$surv_id)]
surv_wbcurve_long[, c("upper", "lower", "std.err", "strata")] <- NA
# visualize new survival curves
weibull_curve_plot <- ggsurvplot_df(surv_wbcurve_long,
surv.geom = geom_line,
linetype = "urm",
color = "role_type",
legend.title = NULL,
xlab = "Tenure (Months)",
surv.scale = "percent",
xlim = c(0, 120),
break.time.by = 24)
weibull_curve_urm_role #print chart
以上是关于用survreg()和gsurvplot()绘制生存分析置信区间。的主要内容,如果未能解决你的问题,请参考以下文章