1

我一直在使用神奇的 gtsummary 包来合并和堆叠表格。但是,我坚持以下用例。

有没有办法转置以下代码的输出(来自包 tbl_summary 帮助页面),以便列标题不是“25% percentile”和“75% percentile”,而行名是“Drug A”和“Drug B”,这些被切换,以便列成为“药物 A”和“药物 B”,百分位数作为表中的行?我的目标是随后将此表堆叠到我已经生成的表上,以便显示这些结果。

tbl_survfit(survfit(Surv(ttdeath, death) ~ trt, trial), probs = c(0.25, 0.75))

上述代码的输出

同样,如果我要组装在 gtsummary 之外生成的值的数据框,是否可以将其堆叠或合并到 tbl_summary 对象中(类似于 tbl_stack 或 tbl_merge 的工作方式)?

感谢您的任何指点,

杰夫

4

1 回答 1

0
  1. 如果需要,您可以将任何 gtsummary 对象转换为 tibble 以执行更多操作。这是一个可以转置您的结果的示例:
library(gtsummary)
library(survival)

fit <- survfit(Surv(ttdeath, death) ~ trt, trial)

tbl_survfit(fit, probs = c(0.25, 0.75)) %>%
  as_tibble() %>%
  dplyr::slice(-1) %>%
  t()
#>                    [,1]          [,2]         
#> **Characteristic** "Drug A"      "Drug B"     
#> **25% Percentile** "17 (16, 20)" "15 (13, 17)"
#> **75% Percentile** "— (—, —)"    "— (—, —)"

reprex 包(v0.3.0)于 2020 年 9 月 24 日创建

  1. 可以将任何行或列添加到 gtsummary 表中,但您确实需要一些有关内部结构的知识,以免破坏现有结构。每个 gtsummary 对象都是一个列表,有两个重要部分:.$table_header.$table_body. 是打印的.$table_body数据框,是.$table_header格式化指令。您可以向 中添加行.$table_body,只需确保堆叠之前的类型相同,并且大多数情况下,您应该没问题。添加列有点棘手,但您也可以试一试!这里有详细信息:http ://www.danieldsjoberg.com/gtsummary/articles/gtsummary_definition.html

快乐编码!

于 2020-09-24T14:16:44.557 回答