You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将gtsummary表格转LaTeX后在R Markdown内联调用报错求助

解决R Markdown中gtsummary表格内联LaTeX调用失败的问题

问题根源

你通过as_gt() %>% as_latex()生成的是带完整LaTeX表格环境的代码(包含\begin{table}、\end{table}及minipage结构),直接用r latex_code内联插入时,会和R Markdown自身的LaTeX排版逻辑冲突,触发括号不匹配的语法错误。

修复方法

方法1:直接在代码块输出表格(推荐)

gtsummary原生支持R Markdown渲染,无需手动转LaTeX。将代码放在带results='asis'参数的R代码块中即可:

{r, results='asis'}
library(gtsummary)
# 筛选数据集并生成对比表格
comp <- mtcars %>% select(mpg, cyl, disp)
comp %>% tbl_summary(by = cyl) %>% as_latex()

方法2:提取纯表格LaTeX代码(适合内联调用)

如果必须存变量内联,跳过gt转换步骤,直接用gtsummary自带的as_latex(),提取不含外层table环境的核心表格代码:

library(gtsummary)
comp <- mtcars %>% select(mpg, cyl, disp)
# 生成gtsummary的LaTeX对象
gt_latex <- comp %>% tbl_summary(by = cyl) %>% as_latex()
# 提取仅表格内容(去掉外层环境标签)
latex_code <- gt_latex$content

之后在R Markdown中直接内联调用:
r latex_code

方法3:用kable转成简洁LaTeX代码

如果不需要gtsummary的复杂格式,也可以转成kable格式:

library(gtsummary)
library(knitr)
comp <- mtcars %>% select(mpg, cyl, disp)
latex_code <- comp %>% tbl_summary(by = cyl) %>% as_kable(format = "latex")

同样通过r latex_code内联插入即可。

内容的提问来源于stack exchange,提问作者R Walser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 00:25:15