首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用gtsummary软件包的宽格式多项逻辑回归结果表

使用gtsummary软件包的宽格式多项逻辑回归结果表
EN

Stack Overflow用户
提问于 2020-10-21 20:46:49
回答 1查看 564关注 0票数 3

我有一个因变量,有四个结果。我已经使用mlogit包进行了多项逻辑回归。

当我尝试使用gtsummary包呈现结果时,我的多项逻辑回归结果堆叠在一起(请参阅下面的代码和表)。

有没有办法让结果并排排成一行,只使用一组级别标签,而不是像下表那样堆叠在一起?

代码语言:javascript
复制
# load packages
library(gtsummary)
library(nnet)

# dummy data 
crime <-data.frame(city = sample(c("SF", "AR", "NYC","MN"),13000,replace = TRUE),
                   year = sample(as.factor(c(1990, 2000, 1999, 1989)),13000,replace = TRUE)
                   )

# multinom model tabulated with gtsummary  
multinom(city ~ year, data = crime) %>%
  tbl_regression(exponentiate = T)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-22 00:57:53

默认情况下,多项式模型将以长格式打印。

我已经编写了一个小函数来将结果转换为wide,并将其保存为GitHub Gist。https://gist.github.com/ddsjoberg/a55afa74ac58e1f895862fcabab62406

代码语言:javascript
复制
set.seed(20210511)
library(gtsummary)
library(magrittr)

multinom_pivot_wider <- function(x) {
  # check inputs match expectatations
  if (!inherits(x, "tbl_regression") || !inherits(x$model_obj, "multinom")) {
    stop("`x=` must be class 'tbl_regression' summary of a `nnet::multinom()` model.")
  }
  
  # create tibble of results
  df <- tibble::tibble(outcome_level = unique(x$table_body$groupname_col))
  df$tbl <- 
    purrr::map(
      df$outcome_level,
      function(lvl) {
        gtsummary::modify_table_body(
          x, 
          ~dplyr::filter(.x, .data$groupname_col %in% lvl) %>%
            dplyr::ungroup() %>%
            dplyr::select(-.data$groupname_col)
        )
      }
    )
  
  tbl_merge(df$tbl, tab_spanner = paste0("**", df$outcome_level, "**"))
}

# dummy data
crime <-
  data.frame(
    city = sample(c("SF", "AR", "NYC", "MN"), 13000, replace = TRUE),
    year = sample(as.factor(c(1990, 2000, 1999, 1989)), 13000, replace = TRUE)
  )

# multinom model tabulated with gtsummary
tbl <-
  nnet::multinom(city ~ year, data = crime) %>%
  tbl_regression(exponentiate = TRUE) %>%
  multinom_pivot_wider()

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64463878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档