Je voudrais formater les nombres avec le séparateur de milliers et spécifier le nombre de décimales. Je sais comment les faire séparément, mais pas ensemble.
Par exemple, j'utilise format
per this pour les décimales:
FormatDecimal <- function(x, k) {
return(format(round(as.numeric(x), k), nsmall=k))
}
FormatDecimal(1000.64, 1) # 1000.6
Et pour le séparateur de milliers, formatC
:
formatC(1000.64, big.mark=",") # 1,001
Cependant, ceux-ci ne fonctionnent pas bien ensemble:
formatC(FormatDecimal(1000.64, 1), big.mark=",")
# 1000.6, since no longer numeric
formatC(round(as.numeric(1000.64), 1), nsmall=1, big.mark=",")
# Error: unused argument (nsmall=1)
Comment puis-je avoir 1,000.6
?
Edit: Cela diffère de cette question qui pose des questions sur le formatage 3.14 en 3,14 (a été signalé comme dup possible).
format
pas formatC
:
format(round(as.numeric(1000.64), 1), nsmall=1, big.mark=",") # 1,000.6
formatC(1000.64, format="f", big.mark=",", digits=1)
(désolé si je manque quelque chose.)