gtsummary R包:打印大量数字时如何删除逗号?

问题描述

使用gtsummary R软件包中的tbl_summary()创建表时,认设置将为大号打印逗号。是否可以删除这些逗号?

例如,假设我要为以下规模较大的变量计算中位数和iqr

set.seed(123)
data=data.frame(X=rnorm(100,mean=50000,sd=10000))
tbl_summary(data)

enter image description here

我想在不使用逗号的情况下打印大量数字,尽管仍然使用逗号来分隔括号内的第一和第三分位数统计信息。因此输出应类似于:50618(45061,56918)。这可能吗?

谢谢

解决方法

是的,您可以控制!

打印gtsummary表中所有数字的功能是style_number()(实际上是scales::number()的副本,但可以通过gtsummary选项进行自定义)。我们可以使用gtsummary主题设置默认的style_number(big.mark=)参数(更多信息请点击http://www.danieldsjoberg.com/gtsummary/articles/themes.html)。

下面的代码将大标记分隔符设置为"",而不是默认的逗号。

list("style_number-arg:big.mark" = "") %>%
  set_gtsummary_theme()

ggplot2::diamonds %>%
  select(cut) %>%
  tbl_summary()

但是,该代码很难记住。更改大标记和小数点的最常见地方是当表格以不同的语言打印时(例如,它们可能使用逗号作为小数点分隔符和使用句点作为大标记分隔符)。因此,这已内置在语言主题中。下面的代码将语言设置为英语(已经是默认语言),并删除逗号作为大标记分隔符。

theme_gtsummary_language("en",big.mark = "")

ggplot2::diamonds %>%
  select(cut) %>%
  tbl_summary()

enter image description here

快乐编码!