更改 gtsummary 汇总表中 "add_p()" 函数执行的默认统计测试

Change the default Statistical test performed by "add_p()" function in gtsummary summary tables

我正在使用 gtsummary 包生成汇总表。

我想做以下事情:

  1. “add_p”函数 对“by”变量中的比例执行双比例 z 检验,而不是独立性卡方检验.使用 stats::prop.test
  2. 在脚注上显示“执行的统计检验”是“具有连续性校正的比例相等性的 2 样本检验”

如何在此示例代码中执行此操作?

trial2 <- trial %>% select(trt, grade)
trial3 <- trial2[-which(trial2$grade == "III"),]
trial4 <- droplevels(trial3)

trial4 %>%
  tbl_summary(
    by = trt,
    statistic = list(all_continuous() ~ "{mean} ({sd})",
                     all_categorical() ~ "{n} / {N} ({p}%)"),
    digits = all_continuous() ~ 2,
    label = grade ~ "Tumor Grade"
  ) %>% add_p()

谢谢!

您可以有两个选择。首先,构建一个自定义 p 值函数来计算基于 prop.test() 的 p 值。 add_p.tbl_summary() 帮助文件中有一个这样的例子。

第二个选项(也是更简单的选项)是从 GitHub 下载软件包的当前开发版本。在此版本中,prop.test() 选项已内置。示例如下!

remotes::install_github("ddsjoberg/gtsummary")
library(gtsummary)
packageVersion("gtsummary")
#> [1] ‘1.3.5.9017’

trial %>%
  select(response, death, trt) %>%
  tbl_summary(by = trt) %>%
  add_p(test = everything() ~ "prop.test") %>%
  modify_footnote(p.value ~ "2-sample test for equality of proportions with continuity correction")

您可能还想查看新函数 add_difference(),它还报告 prop.test() p 值以及组间差异。

trial %>%
  select(trt, response, death) %>%
  tbl_summary(by = trt,
              statistic = all_dichotomous() ~ "{p}%",
              missing = "no") %>%
  modify_footnote(all_stat_cols() ~ NA) %>%
  add_n() %>%
  add_difference(estimate_fun = ~paste0(style_sigfig(. * 100), "%"))