我有一些由coxph
创建的cox模型,我想用modelsummary
对它们进行总结。然而,当我在coxph
脚本中编写robust=T
,并像下面这样运行modelsummary
时,我会收到一条错误消息,上面写着">get_vcov.default中的错误(型号,vcov=vcov,conf_level=conf_level,:无法从类舵手模型中提取鲁棒类型的方差-协方差矩阵。方差-协方差矩阵是调整标准误差所必需的。vcov
自变量接受方差-协方差矩阵、标准误差向量或返回其中一个的函数,如stats::vcov
";
modelsummary(models,
stars=T,
vcov = 'robust'
)
此外,当我使用vcov = 'classical'
时,我得到了表格,但星星消失了。当我在coxph
脚本中写入robust=F
时,它们就会出现。
如何将coxph
脚本中的robust=T
和模型摘要中的vcov = 'robust'
一起使用?
modelsummary
函数使用sandwich
包来计算稳健的标准误差。vcov="robust"
选项调用sandwich::vcovHC()
来计算异方差一致性标准误差。此功能似乎不支持(至少部分(coxph
型号。
但是,sandwich
软件包中的一些其他功能可能支持您的模型。例如,这里有一个模型的例子,其中vcovHC
工作而不工作,但vcovHAC
工作(异方差和自相关一致标准误差(。
library(modelsummary)
library(survival)
library(sandwich)
bladder1 <- bladder[bladder$enum < 5, ]
mod <- coxph(
Surv(stop, event) ~ rx + size + number,
cluster = id,
data = bladder1,
robust = TRUE)
sandwich::vcovHC(mod)
#> Error in meatHC(x, type = type, omega = omega): hatvalues() could not be extracted successfully but are needed for HC3
sandwich::vcovHAC(mod)
#> rx size number
#> rx 0.49295246 0.021777986 0.020566583
#> size 0.02177799 0.022118330 0.002851453
#> number 0.02056658 0.002851453 0.020215100
modelsummary(mod, vcov = "HAC", output = "markdown")
模型1