如何为gt表格中的数字添加千位分隔符(逗号)
给gt表格统一设置千位分隔符的方法
要让整个gt表格(包括常规数据行、全局汇总行)都用上千位逗号分隔符,你可以通过以下两步调整代码:
给常规数据列设置千位分隔符
在gt()函数之后添加fmt_number(),指定需要格式化的数值列,用big.mark=","启用千位逗号分隔。修正全局汇总行的格式化规则
把grand_summary_rows()里的use_seps = FALSE替换为big.mark=",",确保汇总行和常规行格式统一。
修改后的完整代码如下:
library(gt) library(tidyverse) sp500 %>% dplyr::filter(date >= "2015-01-05" & date <= "2015-01-16") %>% dplyr::arrange(date) %>% dplyr::mutate(week = paste0("W", strftime(date, format = "%V"))) %>% dplyr::select(-adj_close, -volume) %>% gt( rowname_col = "date", groupname_col = "week" ) %>% # 给常规数据列设置千位分隔符 fmt_number( columns = c(open, high, low, close), big.mark = "," ) %>% grand_summary_rows( columns = c(open, high, low, close), fns = list( min = ~min(.), max = ~max(.), avg = ~mean(.)), formatter = fmt_number, big.mark = "," # 给全局汇总行设置千位分隔符 )
如果后续需要添加分组汇总的summary_rows(),只需要在它的formatter参数里同样加上big.mark=",",就能保持全表格式一致。
内容的提问来源于stack exchange,提问作者Salvador
相关产品推荐
相关产品推荐

