我正在与 gtsummary 合作在 RMarkdown HTML 文件中创建表格。这是我正在使用的代码:
theme_gtsummary_language(
language = "pt",
decimal.mark = ",",
big.mark = ".")
tab <- dados %>%
select(anoobito, DESCRICAO.y) %>%
tbl_summary(by = anoobito,
label = c(DESCRICAO.y ~ "Causa Final")) %>%
add_overall(last = T) %>%
modify_table_body(fun = ~ dplyr::arrange(.x, desc(readr::parse_number(stat_0)))) %>%
modify_spanning_header(c("stat_1":"stat_5") ~ "**Ano do Óbito**") %>%
modify_header(label = "**Causa Final**",
all_stat_cols() ~ "**{level}**<br>N = {n}") %>%
bold_labels() %>%
remove_row_type(type = "header") %>%
modify_column_hide(columns = "stat_0")
tab$table_body <- head(tab$table_body, 10)
tab
我得到以下结果:
我想知道是否可以增加列宽,以便“N =”出现在单行年份下方,就像 2023 列一样。
一种选择是使用
gt_tbl
转换为 as_gt
对象,它允许使用 gt::cols_width
设置列宽:
library(gtsummary)
tab
gt::cols_width
增加列宽library(gt)
tab |>
as_gt() |>
gt::cols_width(starts_with("stat") ~ px(100))
数据
set.seed(123)
dados <- data.frame(
DESCRICAO.y = c(
"arcu vitae potenti interdum imperdiet vestibulum suscipit fringilla nascetur tristique",
"morbi nostra at curae purus venenatis sed nascetur scelerisque blandit"
),
anoobito = sample(2019:2023, 5000, replace = TRUE, prob = c(.2, .3, .1, .2, .2))
)