在R中,如何使用gtsummary或任何其他r包制作具有五个二进制因子的列联表

问题描述

我正在尝试复制表:

enter image description here

显示了按五个二进制变量分组的人数。我可以加载数据并让计数显示为糟糕的标签,如下所示:

Drugs2 <- read.table("http://users.stat.ufl.edu/~aa/cat/data/Substance2.dat",header = TRUE,stringsAsFactors = TRUE)
library(dplyr)

`Table 7.5` <-  bind_cols(`Alcohol Use` = c("Yes","","No",""),`Cigarette Use` = rep(c("Yes","No"),2),matrix(Drugs2$count,ncol = 8,byrow = T,dimnames = list(NULL,c("Y_F_W","N_F_W","Y_M_W","N_M_W","Y_F_O","N_F_O","Y_M_O","N_M_O")))) 

knitr::kable(`Table 7.5`)

我看到gtsummary包可以使用modify_spanning_header()函数添加一级列标签,但是我看不到如何嵌套生成标头。有人知道如何使用gtsummary添加嵌套标头吗?

有人可以建议如何使用gtsummary或其他软件包来制作此表格的出版质量版本吗?

解决方法

您正确地认为gtsummary无法添加多个扩展标头(以确保我们支持多种格式输出的方式编写)。

我会尝试使用flextable来打印此表。它们具有添加多个标题行的功能,以及合并单元格(垂直和水平方向)的功能。 https://davidgohel.github.io/flextable/

enter image description here