官网教程地址
https://www.danieldsjoberg.com/gtsummary/articles/tbl_summary.html
# install.packages("gtsummary")
library(gtsummary)
trial2 <- trial %>% select(trt, age, grade)#选择待分析变量
vis_dat(trial2)#查看数据分布
trial2 %>% tbl_summary()#基础用法
trial2 %>% #待分析列表
tbl_summary(by = trt) %>% #添加分组变量
add_p() #增加整体P值
#定制表格格式
trial2 %>%
tbl_summary(
by = trt,
statistic = list(all_continuous() ~ "{mean} ({sd})",#确定连续变量格式
all_categorical() ~ "{n} / {N} ({p}%)"),#确定分类变量格式
digits = all_continuous() ~ 2,#确定小数点数
label = grade ~ "Tumor Grade",#确定变量显示名称
missing_text = "(Missing)"#确定缺失值显示蚊子
)
trial2 %>%
tbl_summary(by = trt) %>% #分组变量
add_p(pvalue_fun = ~style_pvalue(.x, digits = 2)) %>%# p值小数点2位数
add_overall() %>%#增加总体情况分布情况
add_n() %>%#增加样板列
modify_header(label ~ "**Variable**") %>%#更改变量列名称
#更改治疗组总体名称
modify_spanning_header(c("stat_1", "stat_2") ~ "**Treatment Received**") %>%
modify_footnote(
all_stat_cols() ~ "Median (IQR) or Frequency (%)"#更改脚注
) %>%
modify_caption("**Table 1. Patient Characteristics**") %>%#表格名称
bold_labels()#标题加粗
#制作交叉表并进行卡方检验
trial %>%
tbl_cross(
row = stage,
col = trt,
percent = "cell"
) %>%
add_p()