Я пытаюсь использовать обратную вероятность взвешивания лечения в регрессии Кокса для конкретной причины, используя функцию CSC
в пакете riskRegression
.
Я вычислил веса без проблем, но когда я пытаюсь передать веса функции 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
всегда выдает указанное выше сообщение об ошибке.
Как я могу это исправить?