如何在R的tbl_summary()中调整列顺序,将Under 35移至Age36~50之前
调整tbl_summary列顺序的解决方案
要调整tbl_summary()生成表格的列顺序,直接使用gtsummary包中的modify_column_order()函数即可,核心是指定你需要的列排列顺序。
修改后的完整代码
tbl9 <- DH_df2 %>% select(Age_Group, BOP_Level) tbl9 %>% tbl_summary(by = Age_Group, missing = "no") %>% add_p(everything() ~ "chisq.test") %>% modify_header(label ~ "**Age Groups**") %>% modify_caption("**Table 1. Correlation Age and BOP**") %>% bold_labels() %>% # 关键:按需求指定列顺序 modify_column_order(c(label, "Under 35", "Age36~50", "Age51~", p.value))
关键说明
modify_column_order()的参数是一个列名向量,按你想要的顺序排列即可:label对应表格的第一列(即你重命名的"Age Groups")- 分组列的名称要和你的
Age_Group变量的水平完全一致(比如"Under 35"、"Age3650"、"Age51") p.value是add_p()生成的p值列的默认名称
- 如果不确定列名,可以先运行原代码生成表格后,用
names(你的表格对象)或查看你的表格对象$table_body来确认准确的列名。
内容的提问来源于stack exchange,提问作者Ana Maono
相关产品推荐
相关产品推荐

