使用R中gtsummary包的tbl_summary函数时CommonMark格式错误求助
gtsummary包tbl_summary函数报错排查与解决
问题重现
运行以下代码时触发错误:
library(gtsummary) tbl_summary(mtcars)
错误信息
Error in value[[3L]](cond): Output format 'html' is not supported in commonmark. Additionally: Warning message: In normalizePath(path.expand(path), winslash, mustWork) : path[1]="\my\path\to\normalizePath(path.expand(path), Ð>
环境信息
- R版本:4.3.1
- gtsummary包版本:1.7.2
完整session信息:
sessionInfo() R version 4.3.1 (2023-06-16 ucrt) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 19044) Matrix products: default attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] markdown_1.7 survivalAnalysis_0.3.0 finalfit_1.0.6 [4] ggsurvfit_0.3.0 gtsummary_1.7.2 survminer_0.4.9 [7] ggpubr_0.6.0 survival_3.5-5 janitor_2.2.0 [10] lubridate_1.9.2 forcats_1.0.0 stringr_1.5.0 [13] dplyr_1.1.2 purrr_1.0.1 readr_2.1.4 [16] tidyr_1.3.0 tibble_3.2.1 ggplot2_3.4.2 [19] tidyverse_2.0.0 loaded via a namespace (and not attached): [1] tidyselect_1.2.0 fastmap_1.1.1 broom.helpers_1.13.0 digest_0.6.33 [5] rpart_4.1.19 timechange_0.2.0 lifecycle_1.0.3 magrittr_2.0.3 [9] compiler_4.3.1 sass_0.4.7 rlang_1.1.1 tools_4.3.1 [13] utf8_1.2.3 gt_0.9.0 data.table_1.14.8 knitr_1.43 [17] ggsignif_0.6.4 xml2_1.3.5 abind_1.4-5 withr_2.5.0 [21] nnet_7.3-19 grid_4.3.1 fansi_1.0.4 jomo_2.7-6 [25] xtable_1.8-4 colorspace_2.1-0 mice_3.16.0 scales_1.2.1 [29] iterators_1.0.14 MASS_7.3-60 cli_3.6.1 generics_0.1.3 [33] km.ci_0.5-6 tzdb_0.4.0 tidytidbits_0.3.2 minqa_1.2.5 [37] splines_4.3.1 survMisc_0.5.6 vctrs_0.6.3 boot_1.3-28.1 [41] glmnet_4.1-7 Matrix_1.5-4.1 carData_3.0-5 car_3.1-2 [45] hms_1.1.3 mitml_0.4-5 rstatix_0.7.2 foreach_1.5.2 [49] glue_1.6.2 nloptr_2.0.3 pan_1.8 codetools_0.2-19 [53] cowplot_1.1.1 stringi_1.7.12 gtable_0.3.3 shape_1.4.6 [57] lme4_1.1-34 munsell_0.5.0 pillar_1.9.0 htmltools_0.5.5 [61] R6_2.5.1 KMsurv_0.1-5 lattice_0.21-8 backports_1.4.1 [65] broom_1.0.5 snakecase_0.11.0 Rcpp_1.0.11 gridExtra_2.3 [69] nlme_3.1-162 xfun_0.39 zoo_1.8-12 pkgconfig_2.0.3
原因分析
- 包版本冲突:
markdown_1.7与commonmark包存在兼容问题,gtsummary默认输出HTML格式,但当前环境下commonmark不支持该输出格式。 - 路径解析错误:警告信息显示Windows路径转义异常,可能是工作路径包含未转义的反斜杠或特殊字符,导致路径规范化失败。
解决办法
1. 调整包依赖版本
更新或降级相关包,确保markdown与commonmark版本兼容:
# 卸载现有包 remove.packages(c("markdown", "commonmark")) # 安装指定兼容版本 install.packages("markdown", version = "1.6") install.packages("commonmark", version = "1.9.0")
2. 显式指定输出格式
绕过默认HTML输出,直接将结果转换为其他支持的格式:
- 转换为gt表格(推荐在RStudio中使用):
library(gtsummary) tbl_summary(mtcars) %>% as_gt()
- 转换为markdown格式:
tbl_summary(mtcars) %>% as_tibble() %>% knitr::kable()
- 转换为flextable格式:
tbl_summary(mtcars) %>% as_flex_table()
3. 修复工作路径问题
检查并设置合法的工作路径,避免使用未转义的反斜杠:
# 设置工作路径(使用正斜杠或双反斜杠) setwd("C:/your/valid/path") # 或检查当前路径 getwd()
4. 清理会话重新加载
重启R会话,清理环境后仅加载必要包:
rm(list = ls()) gc() library(gtsummary) tbl_summary(mtcars)
内容的提问来源于stack exchange,提问作者Maximilian S
相关产品推荐
相关产品推荐

