Existe-t-il une fonction dans R pour afficher les grands nombres séparés par des virgules?Séparateur de virgules pour les nombres dans R?
, c'est-à-dire de 1000000
à 1,000,000
.
Existe-t-il une fonction dans R pour afficher les grands nombres séparés par des virgules?Séparateur de virgules pour les nombres dans R?
, c'est-à-dire de 1000000
à 1,000,000
.
Vous pouvez soit le format ou prettyNum, mais les deux fonctions renvoient un vecteur de caractères. Je ne l'utiliserais que pour l'impression.
> prettyNum(12345.678,big.mark=",",scientific=FALSE)
[1] "12,345.68"
> format(12345.678,big.mark=",",scientific=FALSE)
[1] "12,345.68"
EDIT: Comme Michael Chirico dit dans le commentaire:
Soyez conscient que ceux-ci ont l'effet secondaire de rembourrage des chaînes imprimées avec un espace vide, par exemple:
> prettyNum(c(123,1234),big.mark=",")
[1] " 123" "1,234"
Ajouter trim=TRUE
à format
ou preserve.width="none"
à prettyNum
pour éviter cela:
> 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"
Voir ?format
:
> format(1e6, big.mark=",", scientific=FALSE)
[1] "1,000,000"
>
Les autres réponses affichées fonctionne évidemment - mais j'ai toujours utilisé
library(scales)
comma_format()(1000000)
La fonction comma_format ne peut traiter que des entiers. –
Il s'agit d'une réponse très tardive, et il était peut-être vrai dans le passé que 'comma_format' ne gérait pas les nombres réels, mais maintenant vous pouvez faire ce qui suit:' scales :: comma_format (digits = 12) (1000000.789) ' résulte ce qui suit: '" 1,000,000.789 "'. – steveb
Soyez conscient que ceux-ci ont l'effet secondaire de rembourrage des chaînes imprimées avec un espace vide, par exemple: 'prettyNum (c (123 , 1234), big.mark = ",") '; donne '" 123 "" 1,234 "'. ajoutez 'trim = T' à' format' ou 'preserve.width =" none "' à 'prettyNum' pour éviter cela. – MichaelChirico
@MichaelChirico Merci pour les informations supplémentaires. Je l'ai ajouté à la réponse. –
Notez que si vous utilisez également des chiffres pour les décimales, si vous avez un vecteur, cela peut mal tourner si les nombres sont assez différents. De l'aide "Les vecteurs numériques sont codés avec le nombre minimum de décimales nécessaires pour afficher tous les éléments au moins les chiffres significatifs des chiffres.Toutefois, si tous les éléments ont des zéros, le nombre de décimales est réduit jusqu'à nsmall" – micstr