在 R 中将千位格式化为 Ks

fir*_*o23 2 r

如何在R中将数字格式化465456.6789为漂亮的格式?465,4K其他示例 13567.566 至 13,5K 3567.5 至 3,5K 等等。一般来说,我想要类似的东西

roundup_to <- function(x, to = 10, up = FALSE){
  if(up) round(.Machine$double.eps^0.5 + x/to)*to else round(x/to)*to
}

roundup_to(c((74453.867574737)), to = 100)
Run Code Online (Sandbox Code Playgroud)

成为74,5K

Ony*_*mbu 5

你可以这样做:

a <- c(465456.6789, 13567.566, 3567.5)
sprintf("%sK", format(round(a/1000, 1), dec=","))
[1] "465,5K" " 13,6K" "  3,6K"
Run Code Online (Sandbox Code Playgroud)