r - son - uso del punto y coma
añadir comas en el número para la salida (5)
Estoy enviando un marco de datos a html a través de xtable
. Quiero agregar comas a los números en un par de columnas de la tabla. Pensé que antes de hacer mi propio truco de pegado vería si hay una forma integrada de hacerlo.
Aquí hay una respuesta tardía, pero también podría usar scales::comma_format
siguiente manera:
library(scales)
values <- c(1000000.789, 8888.23)
comma_format(digits = 12)(values)
## [1] "1,000,000.789" "8,888.230"
Solo para valores enteros, puedes usar una coma:
int_vals <- c(1234, 5678)
comma(int_vals)
## [1] "1,234" "5,678"
Es posible que desee considerar la transformación de la columna utilizando 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"
Muchísimas gracias a Jonathan Chang por su respuesta. formatC
parece ser una función extremadamente útil. Esto me inspiró a leer la documentación, en la que encontré a prettyNum
, que resultó ser una solución bastante elegante para un problema similar que estaba teniendo. Aquí hay un ejemplo mínimo viable de lo que hice para agregar comas a los números en un marco de datos llamado enrollment.summary
.
xtable(prettyNum(enrollment.summary,big.mark=","))
Para formatear algunos resúmenes de dplyr
, aquí está el código de dplyr
:
df %>%
summarise(mu=mean(big_values),
min=min(big_values),
max=max(big_values)) %>%
mutate_each(funs(prettyNum(., big.mark=",")))
También puedes intentar usar el argumento de ''formato.args''
## Demonstration of additional formatC() arguments.
print(fm1.table, format.args = list(big.mark = "''", decimal.mark = ","))
de aquí