![](/img/trans.png)
[英]R set dot (“.”) as thousands separator and comma (“,”) as decimal separator
[英]How to replace decimal separator dot by decimal separator comma in formattable() package R?
我有一個數據庫,我使用formattable()
包顯示了這些數據。 但是在我的國家,我們使用逗號作為小數點分隔符,這與 R 使用的標准點不同。
如果可能,我如何更簡單地更改它,使用%>%
運算符
aa2<-read.table(text="Ano v u a p ur h e t
2005 1782135.22 113711.81 98964.84 2207446.25 3876.68 7085.74 3265.89 59030602.87
2006 1719687.83 167937.4 97068.3 2218090.61 3936.55 6811.86 2952.21 59030602.87
2007 1755637.78 122799.6 94299.72 2229590.5 3978.23 6858.66 3171.66 59030602.87
2008 1779051.85 97385.73 101739.73 2225127.88 3996.84 6929.01 2254.58 59030602.87
2009 1805123.7 74061.79 109175.68 2215819.96 4126.57 6771.5 1406.21 59030602.87
2010 1716896.85 168013.92 108014.05 2210652.42 4210.9 7162.69 1535.68 59030602.87
2011 1736892.8 151980.31 113991.8 2200158.22 4259.77 7759.18 1442.06 59030602.87
2012 1757330.63 133273.24 125825.1 2185550.21 4419.45 8129.58 1958.48 59030602.87
2013 1639912.63 248584.77 140183.71 2171799.74 4531.06 8687.48 2777.32 59030602.87
2014 1657021.54 227375.14 180036.19 2136407.51 4631.85 8724.39 2287.94 59030602.87
2015 1720644.41 151089.44 190536.46 2138270.92 4733.71 8911.75 2298.34 59030602.87
2016 1662281.39 202916.33 210776.21 2124964.42 4803.06 8575.97 2165.52 59030602.87
2017 1716427.7 136156.44 230587.13 2117936.68 4809.71 8386.94 2170.25 59030602.87
2018 1638715.79 204483.2 255703.3 2101912.82 4931.96 8366.64 2349.4 59030602.87
", sep="", header = TRUE)
aa2 <- aa2 %>%
mutate(across(v:t, ~ formattable::comma(., digits = 2, big.mark = "")))
formattable::formattable(aa2, list(
'v' = color_tile("#00cccc","#0066cc"),
'u' = color_tile("#00cccc","#0066cc"),
'a' = color_tile("#00cccc","#0066cc"),
'p' = color_tile("#00cccc","#0066cc"),
'ur' = color_tile("#00cccc","#0066cc"),
'h' = color_tile("#00cccc","#0066cc"),
'e'= color_tile("#00cccc","#0066cc")
))
您可以通過設置decimal.mark = ","
來實現您想要的結果:
library(formattable)
library(dplyr)
aa2 <- aa2 %>%
mutate(across(v:t, ~ formattable::comma(., digits = 2, decimal.mark = ",", big.mark = "")))
formattable::formattable(aa2, list(
'v' = color_tile("#00cccc","#0066cc"),
'u' = color_tile("#00cccc","#0066cc"),
'a' = color_tile("#00cccc","#0066cc"),
'p' = color_tile("#00cccc","#0066cc"),
'ur' = color_tile("#00cccc","#0066cc"),
'h' = color_tile("#00cccc","#0066cc"),
'e'= color_tile("#00cccc","#0066cc")
))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.