有没有办法在gtsummary::tbl_summary中按列指定统计格式?

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

我从“by”变量创建了多个列,我想要mean()和sd(),但在一列(最后一列)中我只想要mean()。有没有办法使用 tbl_summary() 按列而不是按行格式化统计信息?

df <- data.frame(
     group = rep(c("A", "B", "C"), each = 10),
     var1 = rnorm(30, mean = 5, sd = 2),
     var2 = rnorm(30, mean = 7, sd = 1),
     var3 = rnorm(30, mean = 9, sd = 3)) 

df |>
  tbl_summary(
    by = group,
    statistic = all_continuous() ~ "{mean} ({sd})"
  )

那么,有没有一种方法可以只显示 Group == "C" 的 {mean},同时保留 Group = c("A", "B") 的 {mean} ({sd}) 统计信息?

r gtsummary
1个回答
0
投票

您可以创建单独的表,然后合并它们:

library(gtsummary)

df |>
  subset(group != "C") |>
  tbl_summary(
    by = group,
    statistic = all_continuous() ~ "{mean} ({sd})"
  ) -> gts1

df |>
  subset(group == "C") |>
  tbl_summary(
    by = group,
    statistic = all_continuous() ~ "{mean}"
  ) -> gts2


tbl_merge(list(gts1, gts2)) |> 
  modify_spanning_header(everything() ~ NA_character_)

创建于 2024-09-24,使用 reprex v2.0.2

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