我想为使用R包gtsummary中的tbl_regression生成的回归摘要表的变量名引入下标。谁能提供有关如何执行此操作的指导?下面介绍了用于生成表和结果表的代码。我希望标签“ NO2”显示为“ NO 2 ”。
library(tidyverse)
library(gtsummary)
case <- c(0,1,0,0,0,0)
no2 <- c(17, 14, 8, 9, 9, 7)
df <- data.frame(case, no2)
mod_adj <- glm(case~no2,data=df, family="binomial")
regression_table_adj <- mod_adj %>%
tbl_regression(exponentiate = TRUE, label = list(no2~"NO2"))
regression_table_adj
由reprex package(v0.3.0)于2020-03-04创建
答案 0 :(得分:2)
这不是我的,但我在这里找到了答案并对其进行了修改。 https://community.rstudio.com/t/subscripts-to-annotate-gt-table/87089
本质上,您会将其转换为 gt
对象并破解标签,使其打印为下标。
library(tidyverse)
library(gtsummary)
library(gt)
case <- c(0,1,0,0,0,0)
no2 <- c(17, 14, 8, 9, 9, 7)
df <- data.frame(case, no2)
mod_adj <- glm(case~no2,data=df, family="binomial")
regression_table_adj <- mod_adj %>%
tbl_regression(exponentiate = TRUE, label = list(no2 = "NO@2~")) %>%
as_gt() %>%
text_transform(
locations = cells_body(),
fn = function(x) {
str_replace_all(x,
pattern = "@",
replacement = "<sub>") %>%
str_replace_all("~",
"</sub>") }
)
是的,符号可以轻松替换。我认为最好使用 '~'
以外的其他内容,因为它很容易表示其他含义。
答案 1 :(得分:1)
gtsummary软件包默认使用gt软件包打印表。我浏览了他们的文档,但没有找到在表主体中包含下标的方法。
好消息是gtsummary还支持通过knitr::kable()
函数使用as_kable()
打印表。您可以在两个tilda之间换行以使其成为下标(例如label = list(no2 ~ "NO~2~")
)。在R markdown文件中使用下面的代码,您应该获得下标。使用kable的不利之处在于它不支持脚注,缩进和跨度标头。祝您编码愉快!
library(gtsummary)
case <- c(0,1,0,0,0,0)
no2 <- c(17, 14, 8, 9, 9, 7)
df <- data.frame(case, no2)
mod_adj <- glm(case~no2,data=df, family="binomial")
mod_adj %>%
tbl_regression(
exponentiate = TRUE,
label = list(no2 ~ "NO~2~")
) %>%
as_kable()
由reprex package(v0.3.0)于2020-03-04创建