xtable
を介してデータフレームをHTMLに出力しています。テーブルのいくつかの列の数値にコンマを追加したいと思います。自分でペーストハックを行う前に、これを行うための組み込みの方法があるかどうかを確認すると思いました。
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"
Jonathan Chang氏の回答に大変感謝しています。 formatC
は非常に便利な関数のようです。そのため、私はprettyNum
を見つけたドキュメンテーションを読む気になりました。これは、私が抱えていた同様の問題に対する非常にエレガントな解決策であることがわかりました。 _enrollment.summary
_という名前のデータフレームの数値にカンマを追加するために実行した最小限の実行可能な例を次に示します。
xtable(prettyNum(enrollment.summary,big.mark=","))
関数の引数 'format.args'を使用して試すこともできます
## Demonstration of additional formatC() arguments.
print(fm1.table, format.args = list(big.mark = "'", decimal.mark = ","))
ここから
これは遅い答えですが、次のようにscales::comma_format
を使用することもできます。
library(scales)
values <- c(1000000.789, 8888.23)
comma_format(digits = 12)(values)
## [1] "1,000,000.789" "8,888.230"
整数値のみの場合は、カンマを使用できます。
int_vals <- c(1234, 5678)
comma(int_vals)
## [1] "1,234" "5,678"
dplyr
からの要約をフォーマットするために、ここにボイラープレートコードがあります:
df %>%
summarise(mu=mean(big_values),
min=min(big_values),
max=max(big_values)) %>%
mutate_each(funs(prettyNum(., big.mark=",")))