Je génère une trame de données en HTML via xtable
. Je veux ajouter des virgules aux nombres dans quelques colonnes de la table. Je me suis dit avant de faire mon propre hack que je verrais s'il y a un moyen de le faire.Ajouter des virgules dans le nombre pour la sortie
Répondre
Vous voudrez peut-être envisager de transformer la colonne en utilisant 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"
Un grand merci à Jonathan Chang pour sa réponse. formatC
semble être une fonction extrêmement utile. Cela m'a inspiré à lire la documentation, où j'ai trouvé prettyNum
, qui s'est avéré être une solution assez élégante à un problème similaire que j'avais. Voici un exemple minimum viable de ce que j'ai fait pour ajouter des virgules aux nombres dans un bloc de données nommé enrollment.summary
.
xtable(prettyNum(enrollment.summary,big.mark=","))
Vous pouvez également essayer d'utiliser l'argument auj 'format.args'
## Demonstration of additional formatC() arguments.
print(fm1.table, format.args = list(big.mark = "'", decimal.mark = ","))
d'ici
Ceci est très utile, car il permet à l'utilisateur de conserver le format original des colonnes. – dayne
pour mettre en forme des résumés de dplyr
, voici boilerplate code:
df %>% summarise(mu=mean(big_values), min=min(big_values), max=max(big_values)) %>% mutate_each(funs(prettyNum(., big.mark=",")))
Voici une réponse tardive, mais vous pouvez également utiliser scales::comma_format
comme suit:
library(scales)
values <- c(1000000.789, 8888.23)
comma_format(digits = 12)(values)
## [1] "1,000,000.789" "8,888.230"
Pour juste des valeurs entières, vous pouvez simplement utiliser des virgules:
int_vals <- c(1234, 5678)
comma(int_vals)
## [1] "1,234" "5,678"
- 1. Pour ajouter des virgules dans le fichier
- 2. Regex pour le nombre séparé par des virgules
- 3. Comment formater un nombre avec des virgules?
- 4. comment reformater un nombre avec des virgules
- 5. Sortie délimitée par des virgules de la requête SQL
- 6. Quelle serait la regex pour ajouter des virgules aux chiffres longs pour la lisibilité?
- 7. Mettre en forme un nombre avec des virgules, mais conserver des décimales
- 8. Reg Ex pour correspondre à des numéros et des virgules
- 9. Comment arrondir un nombre décimal pour la sortie?
- 10. Mysql: Obtenir le nombre de valeurs séparées par des virgules avec
- 11. Supprimer la valeur des valeurs séparées par des virgules Chaîne
- 12. Séparation des virgules TSQL
- 13. jQuery rechercher le nombre entier et ajouter la décimale
- 14. Valeurs séparées par des virgules
- 15. Django: Ajouter le nombre de résultats
- 16. Numéros avec des virgules en Javascript
- 17. JavaScript: ajouter ou soustraire du nombre dans la chaîne
- 18. Ajout de virgules à un nombre décimal compris dans une chaîne de texte avec .NET 2.0
- 19. jQuery - comment compter le nombre de li et en ajouter un si le nombre est impair?
- 20. Oracle: Pattern pour to_char (nombre) pour ajouter des caractères ascii supplémentaires?
- 21. Expression régulière pour trouver des avertissements et des erreurs dans la sortie du compilateur
- 22. Comment gérer les nombres décimaux et les virgules séparés par des virgules dans CF?
- 23. Remplacer la sortie dans une boucle dans le script bash
- 24. Expression régulière pour remplacer d'abord par des virgules underscore
- 25. Regex pour les espaces correspondant non précédés par des virgules
- 26. EventListener à surveiller pour le nombre d'éléments dans DataGrid
- 27. C# transformation XSLT ajouter et à la sortie
- 28. Quel est le moyen le plus rapide d'inverser une liste séparée par des virgules dans vim?
- 29. Analyse CSV (valeurs séparées par des virgules) dans Oracle
- 30. Comment lire-écrire dans/à partir du fichier texte avec des valeurs séparées par des virgules
'formatC' est un [function] (https://stat.ethz.ch/R-manual/R-devel/library/base/html/formatc.html) dans le paquet 'base', pas un paquet lui-même. À l'avenir, veuillez inclure des exemples reproductibles et afficher le comportement dans votre réponse. Par exemple, envisagez de remplacer 'enrollment.summary' par' mtcars': 'prettyNum (mtcars, big.mark =", ")' renvoie une matrice de caractères où les colonnes correspondent aux colonnes du fichier "mtcars' data.frame, et les nombres sont imprimé. –
Notez également que 'prettyNum' remplit votre sortie avec un espace vide (potentiellement indésirable): prettyNum (c (123,1234), big.mark =", "); donne "123" "1,234". Ajoutez preserve.width = "none" pour éviter cela. – MichaelChirico