这件事让我发疯。下面的例子来自文档: https://www.danieldsjoberg.com/gtsummary/articles/gallery.html#wald-ci
基本上,我正在运行逻辑回归并尝试使用 tbl_regression 为我提供可发布的表。默认情况下,tbl_regression 发布 Wald p 值,但发布轮廓似然置信区间。根据文档,我可以通过使用 tibble 强制它使用 Wald CI。
我的问题是下面的代码对 OR 求幂,但不对置信区间求幂。我尝试将 my_tidy 函数中的“exponentiate = FALSE”更改为“exponentiate = TRUE”,但没有什么区别。我该如何解决这个问题?
my_model <- glm(outcome ~ var1 + var2 + var3 + var4, family = binomial (link = logit), data=df)
my_tidy <- function(x, exponentiate = FALSE, conf.level = 0.95, ...) {
dplyr::bind_cols(
broom::tidy(x, exponentiate = exponentiate, conf.int = FALSE),
# calculate the confidence intervals, and save them in a tibble
confint.default(x) |>
dplyr::as_tibble() |>
rlang::set_names(c("conf.low", "conf.high"))
)
}
tbl_regression(my_model, tidy_fun = my_tidy, exponentiate = TRUE)
您只需要对优势比的置信区间求幂即可。置信区间是用
confint.default()
构建的,但代码中没有任何内容对其求幂。所以只需将 confint.default()
包裹在 exp()
中即可:
my_tidy <- function(x, exponentiate = FALSE, conf.level = 0.95, ...) {
dplyr::bind_cols(
broom::tidy(x, exponentiate = exponentiate, conf.int = FALSE),
# calculate the confidence intervals, and save them in a tibble
exp(confint.default(x)) |>
dplyr::as_tibble() |>
rlang::set_names(c("conf.low", "conf.high"))
)
}