R语言 绘制混合效应考克斯回归和/或时间相互作用的调整生存曲线?

f3temu5u  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(131)

我用coxme创建了一个混合效果的考克斯回归。

**Q1)**我想在调整后的生存曲线中绘制固定效应的系数。然而,在survminer这样的包中,似乎只有没有脆弱项的coxph对象才能使用此功能。
是否可以用R手动计算和绘制?

我有下面的模型用于演示目的:

library(survival)
library(coxme)
kidney <-  data.frame(kidney)

coxme <- coxme(Surv(time, status) ~ age + sex + (1|disease), 
                  data = kidney)

字符串

Q2)此外,是否可以绘制时间交互作用(coxph中的tt())?

例如模型:

library(survival)
kidney <-  data.frame(kidney)

coxph.me <- coxph(Surv(time, status) ~ age + sex + tt(sex) + frailty(disease), 
                  data = kidney,
                  tt=function(x,t,...) x*t)


Thanks in advance

ujv3wf0j

ujv3wf0j1#

从模型中获得调整后的生存曲线的最流行的方法是g计算,它需要一个函数来预测给定协变量和 t 向量的 *t * 时的生存概率。不幸的是,coxme函数并不自然地支持这种预测,例如,包中没有predict.coxme函数。
但是,如果您从coxme切换到带有frailty()术语的标准coxph模型,则可以将adjustedCurves包与riskRegression包结合使用,以获得您想要的内容。下面我给予一个如何实现这一点的示例。由于riskRegression中的一个bug,这有点古怪,但它工作得很好。

library(riskRegression)
library(adjustedCurves)
library(survival)

set.seed(42)

# simulate some example data
sim_dat <- sim_confounded_surv(n=500, max_t=1.2)
sim_dat$group <- as.factor(sim_dat$group)
sim_dat$cluster <- sample(1:10, size=nrow(sim_dat), replace=TRUE)

# outcome model
# NOTE: your frailty term needs to be named "cluster" due to some
#       sub-optimal coding in the riskRegression package
cox_mod <- coxph(Surv(time, event) ~ x1 + x2 + x4 + x5 + group + 
                   frailty(cluster),
                 data=sim_dat, x=TRUE)

predict_fun <- function(...) {
  1 - predictRisk(...)
}

# using direct adjustment 
adjsurv <- adjustedsurv(data=sim_dat,
                        variable="group",
                        ev_time="time",
                        event="event",
                        method="direct",
                        outcome_model=cox_mod,
                        predict_fun=predict_fun)

plot(adjsurv)

字符串


的数据
如果你也需要置信区间,你可以通过稍微修改代码来使用bootstrapping来获得置信区间(注意,这可能需要一段时间,特别是当你有很多数据的时候)。

# using direct adjustment with bootstrap confidence intervals
adjsurv <- adjustedsurv(data=sim_dat,
                        variable="group",
                        ev_time="time",
                        event="event",
                        method="direct",
                        bootstrap=TRUE,
                        n_boot=500,
                        outcome_model=cox_mod,
                        predict_fun=predict_fun)

plot(adjsurv, conf_int=TRUE, use_boot=TRUE)



但这些都不适用于模型公式中的tt()项。

相关问题