¿Hay una función en R para mostrar números grandes separados por comas?Separador de coma para números en R?
es decir, de 1000000
a 1,000,000
.
¿Hay una función en R para mostrar números grandes separados por comas?Separador de coma para números en R?
es decir, de 1000000
a 1,000,000
.
Usted puede tratar de cualquier formato o prettyNum, pero ambas funciones devuelven un vector de caracteres. Solo usaría eso para imprimir.
> prettyNum(12345.678,big.mark=",",scientific=FALSE)
[1] "12,345.68"
> format(12345.678,big.mark=",",scientific=FALSE)
[1] "12,345.68"
EDIT: Como dice Michael Chirico en el comentario:
Tenga en cuenta que estos tienen el efecto secundario de relleno de las cuerdas impresas con espacio en blanco, por ejemplo:
> prettyNum(c(123,1234),big.mark=",")
[1] " 123" "1,234"
Agregar trim=TRUE
a format
o preserve.width="none"
a prettyNum
para evitar esto:
> 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"
Ver ?format
:
> format(1e6, big.mark=",", scientific=FALSE)
[1] "1,000,000"
>
Las otras respuestas publicadas obviamente funcionan - pero siempre han utilizado
library(scales)
comma_format()(1000000)
La función comma_format solo puede tratar con enteros. –
Esta es una respuesta muy tardía, y puede haber sido verdad en el pasado que 'formato_comma 'no manejaba los números reales, pero ahora puede hacer lo siguiente:' escalas :: formato_comma (dígitos = 12) (1000000.789) 'que resultados en lo siguiente: '" 1,000,000.789 "'. – steveb
Tenga en cuenta que estos tienen el efecto secundario de relleno de las cuerdas impresas con espacio en blanco, por ejemplo: 'prettyNum (c (123 , 1234), big.mark = ",") '; da '" 123 "" 1,234 "'. agregue 'trim = T' a' format' o 'preserve.width =" none "' a 'prettyNum' para evitar esto. – MichaelChirico
@MichaelChirico Gracias por la información adicional. Lo he agregado a la respuesta. –
Tenga en cuenta que si también tiene dígitos de configuración para las posiciones decimales, si tiene un vector, puede salir mal si los numebrs son bastante diferentes. De la ayuda "Los vectores numéricos están codificados con el número mínimo de decimales necesario para mostrar todos los elementos al menos los dígitos dígitos significativos. Sin embargo, si todos los elementos tienen ceros finales, el número de decimales se reduce hasta nsmall" – micstr