【发布时间】:2020-07-08 01:22:24
【问题描述】:
我正在尝试使用 riskRegression 包中的 CSC 函数在特定原因 cox 回归中使用治疗加权的逆概率。
我没有问题地计算了权重,但是当我尝试将权重传递给 CSC 函数时,我收到以下错误消息:
Error in eval(extras, data, env) :
..1 used in an incorrect context, no ... to look in
一个完整的可重现示例如下所示:
library(ipw)
library(cmprsk)
library(survival)
library(riskRegression)
data(mgus2)
# get some example data
mgus2$etime <- with(mgus2, ifelse(pstat==0, futime, ptime))
mgus2$event <- with(mgus2, ifelse(pstat==0, 2*death, 1))
mgus2$event <- factor(mgus2$event, 0:2, labels=c("censor", "pcm", "death"))
mgus2$age_cat <- cut(mgus2$age, breaks=seq(0, 100, 25))
mgus2$sex <- ifelse(mgus2$sex=="F", 0, 1)
# remove NA
mgus2 <- subset(mgus2, !is.na(mspike))
# estimate inverse probability weights
weights <- ipwpoint(sex, "binomial", "logit", denominator= ~ age_cat + mspike,
data=mgus2)
mgus2$weights <- weights$ipw.weights
# rerun cox model using weights
mod2 <- CSC(Hist(etime, event) ~ sex + age_cat + mspike, cause="pcm",
surv.type="hazard", fitter="coxph", data=mgus2,
weights=weights)
我从文档中知道CSC 函数在内部调用coxph 函数,并使用... 语法向它传递附加参数。其他参数也可以传递给函数,但 weight 参数总是会产生上面的错误消息。
我该如何解决这个问题?
【问题讨论】:
标签: r parameter-passing cox-regression