You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R的tbl_regression中横向展示交互项系数

实现交互项系数横向展示的解决方案

要将两个模型的结果改为横向并排布局(变量纵向排列,模型结果横向分布),直接用tbl_merge()替代tbl_stack()即可,同时可通过参数优化表格可读性:

完整代码

library(gtsummary)
packageVersion("gtsummary")
#> [1] '1.6.0'

# 构建第一个模型及汇总表
tbl1 <- trial %>% 
  mutate(early = case_when(stage %in% c("T1","T2") ~ 1, TRUE ~ 0)) %>% 
  glm(response ~ age * early, family = binomial, data = .) %>%
  tbl_regression(
    exponentiate = TRUE,
    label = list(
      age ~ "年龄",
      early ~ "早期肿瘤(T1/T2)",
      age:early ~ "年龄 × 早期肿瘤"
    )
  ) %>%
  modify_header(label ~ "**变量**") # 统一左侧变量列标题

# 构建第二个模型及汇总表
tbl2 <- trial %>% 
  mutate(late = case_when(stage %in% c("T3","T4") ~ 1, TRUE ~ 0)) %>% 
  glm(response ~ age * late, family = binomial, data = .) %>%
  tbl_regression(
    exponentiate = TRUE,
    label = list(
      age ~ "年龄",
      late ~ "晚期肿瘤(T3/T4)",
      age:late ~ "年龄 × 晚期肿瘤"
    )
  ) %>%
  modify_header(label ~ "**变量**")

# 横向合并两个表格,添加分栏标题
tbl_merge(
  tbls = list(tbl1, tbl2),
  tab_spanner = c("**早期肿瘤模型**", "**晚期肿瘤模型**")
)

关键说明

  • tbl_merge()是实现横向布局的核心函数,会自动对齐两个表格的变量列,将模型结果列并排展示
  • 通过label参数自定义变量和交互项的显示名称,提升表格可读性
  • tab_spanner参数给每个模型的结果列添加分组标题,清晰区分不同模型
  • 用modify_header()统一两个表格的变量列标题,避免重复显示

内容的提问来源于stack exchange,提问作者Ahmed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 10:33:58