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

如何用gt包将数据框d列星号设为c列上标(添加p值显著性)

使用gt包将星号设置为数字列的上标

数据

a <- c("Green", "Red", "Blue", "Orange")
b <- c(100, 408, 39, 102)
c <- c(12000, 3100, 2410, 503)
d <- c("*", "*", "*", "***")
data <- data.frame(a, b, c, d)

data %>% 
  gt()

问题

现有上述数据框,使用gt包生成表格时,能否将d列的星号设置为c列的上标,使c列显示为12000*、3100*这类形式?我正在使用gt包制作表格...

解决方案

可以实现,通过Markdown上标语法结合gt的fmt_markdown()函数就能完成,具体代码如下:

library(gt)
library(dplyr)

a <- c("Green", "Red", "Blue", "Orange")
b <- c(100, 408, 39, 102)
c <- c(12000, 3100, 2410, 503)
d <- c("*", "*", "*", "***")
data <- data.frame(a, b, c, d)

data %>%
  # 把c列数值和d列星号拼接成Markdown上标格式
  mutate(c = paste0(c, "^", d, "^")) %>%
  # 移除d列(也可用cols_hide(columns = d)隐藏)
  select(-d) %>%
  gt() %>%
  # 渲染c列的Markdown格式
  fmt_markdown(columns = c)

说明

  • Markdown中用^内容^表示上标,因此将c列值与d列星号拼接成数值^星号^的格式
  • fmt_markdown()会让gt识别并渲染这部分Markdown语法,最终星号会以上标形式显示在对应数字右侧
  • 如果需要保留d列数据但不显示在表格中,替换select(-d)为cols_hide(columns = d)即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 13:20:37