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

如何解决tbl_regression对象列表添加显著性星号的报错问题?

解决方法

报错原因是add_significance_stars()仅支持单个tbl_regression/tbl_uvregression对象,无法直接处理列表。需要先遍历列表为每个模型单独添加显著性星号,再合并成一张表格。

修改后的代码如下:

library(gtsummary)
library(tidyverse)

# 创建tbl_regression对象列表
models <-  c("disp", "disp + hp") %>% 
  map(
    ~ paste("vs", .x, sep = " ~ ") %>% 
      as.formula() %>% 
      glm(data = mtcars, family = binomial(link = "logit")) %>% 
      tbl_regression(exponentiate = TRUE)
  )

# 1. 遍历列表,为每个模型添加显著性星号
models_with_stars <- models %>%
  map(
    ~ add_significance_stars(
      .x,
      pattern = "{estimate}{stars}",
      thresholds = c(0.001, 0.01, 0.05),
      hide_ci = TRUE,
      hide_p = TRUE,
      hide_se = FALSE
    )
  )

# 2. 合并多个模型表格
tbl_merge(
  tbls = models_with_stars,
  column_spanners = c("**模型1: vs ~ disp**", "**模型2: vs ~ disp + hp**")
)

关键说明

  • 使用map()遍历模型列表,对每个tbl_regression对象单独调用add_significance_stars(),确保输入符合函数要求。
  • 用tbl_merge()将处理后的多个表格合并,通过column_spanners设置列标题区分不同模型,最终得到带显著性星号的合并表格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 22:25:33