未加权和加权 Kaplan-Meier 曲线中面临风险的人数不同

问题描述 投票:0回答:1

我不明白为什么加权后未加权的卡普兰-迈耶曲线和加权后面临风险的人数不同。在加权 Cox 模型中,数字 n 再次正确。

数据:

library(survival)
library(survminer)
library(cobalt)


set.seed(123)
options(scipen=999)
lalonde <- cbind(lalonde,
                   event = sample(c(0,1), size=614, replace=TRUE, prob=c(0.84,0.16)),
                   time = runif(614, min=10, max=365))

我尝试过:

formula <- treat ~ age + educ + race + married + nodegree + re74 + re75 + re78

#PS
lalonde$pscore <- glm(formula, data = lalonde,
                                family = binomial(link = "logit"))$fitted.values

# Calculate MATCHING WEIGHTS
lalonde$weight <- ifelse(lalonde$treat == 1,
                     pmin(lalonde$pscore, 1 - lalonde$pscore) / lalonde$pscore,
                     pmin(lalonde$pscore, 1 - lalonde$pscore) / (1 - lalonde$pscore))

#####################################

#Fit model 
surv_object <- Surv(time = lalonde$time, event = lalonde$event)
fit1 <- survfit(surv_object ~ treat, data = lalonde, robust = TRUE, weights = lalonde$weight)

# Kaplan-Meier
KM <- ggsurvplot(
  fit1, 
  data = lalonde, 
  risk.table = TRUE, 
  legend.labs = c("Treat 0", "Treat 1"), 
  censor = FALSE
)

此处,面临风险的人数减少为:治疗 0:109 和治疗 1:110。

在未加权的原始数据中:Treat 0:429,Treat 1:185。

现在是考克斯模型:

#Weighted Cox model
cox <- coxph(Surv(time, event) ~ treat, data=lalonde, weights = lalonde$weight, robust = TRUE)
cox

这里 n = 614,如原始数据所示。

这是为什么呢? 还是我错过了什么?

非常感谢!

r survival-analysis
1个回答
0
投票

我认为面临风险的数字是由权重之和创建的? 但为什么稳健 = TRUE?

© www.soinside.com 2019 - 2024. All rights reserved.