Разделитель запятой для чисел в R?

Есть ли функция в R для отображения больших чисел, разделенных запятыми?

i.e., от 1000000 до 1,000,000.

Ответ 1

Вы можете попробовать любой формат или prettyNum, но обе функции возвращают вектор символов. Я использовал бы это только для печати. ​​

> prettyNum(12345.678,big.mark=",",scientific=FALSE)
[1] "12,345.68"
> format(12345.678,big.mark=",",scientific=FALSE)
[1] "12,345.68"

EDIT: Как говорит Майкл Чирико в комментарии:

Имейте в виду, что они имеют побочный эффект отложения печатных строк с пробелом, например:

> prettyNum(c(123,1234),big.mark=",")
[1] "  123" "1,234"

Добавьте trim=TRUE в format или preserve.width="none" в prettyNum, чтобы предотвратить это:

> prettyNum(c(123,1234),big.mark=",", preserve.width="none")
[1] "123"   "1,234"
> format(c(123,1234),big.mark=",", trim=TRUE)
[1] "123"   "1,234"

Ответ 2

См. ?format:

> format(1e6, big.mark=",", scientific=FALSE)
[1] "1,000,000" 
>   

Ответ 3

Другие ответы опубликованы, очевидно, работают, но я всегда использовал

library(scales)    
comma_format()(1000000)