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

使用kableExtra转换gtsummary输出时脚注上标丢失求助

解决gtsummary转kableExtra后PDF脚注上标丢失的问题

以下是两种可行的解决思路:

方法一:替换HTML上标为LaTeX兼容语法

gtsummary默认生成的上标是HTML格式(<sup>1</sup>),但LaTeX不识别这种语法,转PDF时会丢失上标。我们可以先把HTML上标替换成LaTeX的上标语法($^1$),再转成kableExtra:

iris  |>
  gtsummary::tbl_summary(by = 'Species') |>
  # 批量替换所有HTML上标为LaTeX格式
  gtsummary::modify_table_styling(
    columns = everything(),
    rows = everything(),
    fn = function(x) gsub("<sup>(\\d+)</sup>", "$^\\1$", x)
  ) |>
  gtsummary::as_kable_extra(
    booktabs = TRUE,
    format = 'latex',
    escape = FALSE  # 禁止转义LaTeX语法
  )

方法二:直接使用gtsummary的LaTeX输出逻辑

跳过as_kable_extra,先将表格转为LaTeX格式的kable对象,再用kableExtra修饰:

iris  |>
  gtsummary::tbl_summary(by = 'Species') |>
  gtsummary::as_kable(format = 'latex', escape = FALSE) |>
  kableExtra::kable_styling(booktabs = TRUE)

这样处理后,PDF渲染时就能正确显示脚注上标了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 10:52:07