如何在 gtsummary ANCOVA 中指定协变量

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

在 gsummary 表中,我想显示 A 组和 B 组之间几个变量差异的 p 值,并根据年龄和性别进行校正。我发现here我可以在

gtsummary::add_p
中使用ANCOVA测试。但是,我不知道如何在
test_args
中指定我的协变量“年龄”和“性别”。

在下面的示例中,我想计算 var1 和 var2 的 ancova p 值(根据年龄和性别进行校正)。 Var3 是一个具有级别的变量,我想对其执行 chisq.test。

library(dplyr)
library(gtsummary)

df <- data.frame(
  group = c(2, 1, 1, 2, 1, 2), 
  var1 = (rnorm(6,mean=10, sd=3)), 
  var2 = (rnorm(6,mean=6, sd=1)), 
  var3 = c(0, 4, 1, 3, 1, 1), 
  age = c(50, 32, 26, 46, 38, 62), 
  sex = c(1, 0, 1, 1, 1, 0))

df %>% 
tbl_summary(
by=group, 
type=list(c("var1":"age") ~ 'continuous', "sex" ~ 'categorical'),
statistic = list(c("var1", "var2", "age") ~ "{mean} ± {sd}", "var3" ~ "{median} ({p25}, {p75})")
) %>%
add_p(test=list(c("var1", "var2") ~ "ancova", "var3" ~ "chisq.test"), test_args = list(all_tests("ancova") ~ list(by = group, adj.vars = c("age", "sex"))))

我收到以下错误

'...' must be empty
Problematic argument: test_args = (...)

我发现了类似的问题here,但不幸的是没有得到解答。非常感谢任何帮助!

dplyr statistics summary gtsummary ancova
1个回答
0
投票

要获得调整后的结果,您需要使用

add_difference()
而不是
add_p()
。差异函数仍将为您提供 p 值,但您需要执行额外的步骤来隐藏差异及其置信区间。

我还通过缩小表格以仅汇总需要调整计算的变量来进行简化。您始终可以使用

tbl_stack()
组合使用
add_p()
创建的结果(而不是
add_difference()

library(gtsummary)

df <- data.frame(
  group = c(2, 1, 1, 2, 1, 2), 
  var1 = (rnorm(6,mean=10, sd=3)), 
  var2 = (rnorm(6,mean=6, sd=1)), 
  var3 = c(0, 4, 1, 3, 1, 1), 
  age = c(50, 32, 26, 46, 38, 62), 
  sex = c(1, 0, 1, 1, 1, 0))

df %>% 
  tbl_summary(
    include = c("var1", "var2"),
    by = group, 
    type= c("var1", "var2") ~ 'continuous',
    statistic = c("var1", "var2") ~ "{mean} ± {sd}"
  ) %>%
  add_difference(
    test = c("var1", "var2") ~ "ancova", 
    adj.vars = c("age", "sex")
  ) %>%
  # hide the difference and ci columns
  modify_column_hide(any_of(c("estimate", "ci", "conf.low", "conf.high"))) %>%
  # convert to kable to display on stackoverflow
  as_kable()
特点 1,N = 3 2,N = 3 p 值
var1 12.10±4.00 11.02±2.41 0.3
var2 6.79±1.18 5.96±0.43 0.2

创建于 2024-03-10,使用 reprex v2.1.0

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