R 中带有扫帚的 glm 的 Fast Wald 置信区间

Fast Wald confidence intervals for a glm with broom in R

我想计算一个较大数据集上 glm 系数的 Wald 置信区间,并使用 broom 获得整洁的输出。

mydata <- data.frame(y = rbinom(1e5,1,0.8), 
                 x1 = rnorm(1e5), 
                 x2 = rnorm(1e5))
glm.1 <- glm(y ~ x1 + x2, data = mydata, family = "binomial")

使用 broom::tidy 处理大数据会花费大量时间,因为它使用 confint.glm,它根据描述的对数似然函数计算置信区间。

tidy(glm.1, conf.int = TRUE) # can take literally hours

confintconfint.glm 分别不对用于计算置信区间的方法进行论证。如果你想使用另一种方法,你需要使用不同的功能,例如confint.default 沃尔德。

broom::tidy 反过来没有所用函数的参数(或者我错过了什么?),它总是为 glm 调用 confint.glm

要使用不同的函数计算置信区间,broomconfint_tidy,您可以在其中指定要使用的函数:

confint_tidy(glm.1, func = stats::confint.default)

将此与估计值放在一起:

cbind(tidy(glm.1), confint_tidy(glm.1, func = stats::confint.default))