我经由xtable输出数据帧为HTML。我想逗号添加到号码表中的一对夫妇列。之前,我做了我自己贴破解我会检查是否有一个内置的方式做到这一点,我想通。

有帮助吗?

解决方案

您可能要考虑使用formatC转化列

> formatC(1:10 * 100000, format="d", big.mark=",")
 [1] "100,000"   "200,000"   "300,000"   "400,000"   "500,000"   "600,000"  
 [7] "700,000"   "800,000"   "900,000"   "1,000,000"

其他提示

巨大的感谢乔纳森张他的回答。 formatC看起来是一个非常有用的功能。这激发了我阅读文档吧,其中我发现prettyNum,这竟然是一个非常优雅的解决方案,我有类似的问题。下面是我所做的,以逗号添加到数字命名enrollment.summary数据帧中的最小存活例子。

xtable(prettyNum(enrollment.summary,big.mark=","))

您也可以尝试使用机能的研究参数“format.args”

  ## Demonstration of additional formatC() arguments.
  print(fm1.table, format.args = list(big.mark = "'", decimal.mark = ","))

从这里

https://cran.rstudio.com/web/packages/xtable/ xtable.pdf

下面是一个迟到的答案,但你也可以使用scales::comma_format如下:

library(scales)
values <- c(1000000.789, 8888.23)
comma_format(digits = 12)(values)
## [1] "1,000,000.789" "8,888.230"

有关刚刚整数值,可以只使用逗号:

int_vals <- c(1234, 5678)
comma(int_vals)
## [1] "1,234" "5,678"

格式化从dplyr一些摘要,这里是样板代码:

df %>%
    summarise(mu=mean(big_values),
              min=min(big_values),
              max=max(big_values)) %>%
    mutate_each(funs(prettyNum(., big.mark=",")))
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top