2015-10-18 244 views
1

任何人都知道如何在R中設置千位分隔符?
我想在這樣的輸出某物得到:如何在R中設置千位分隔符?

123 425 231 

123.425.231 

代替:

123425231 

感謝。

+2

使用'formatC' .... –

+0

至少不用點,他們中的R指示小數的標準方式。 – Jaap

+0

找到這篇文章,爲您的問題更多的答案,http://stackoverflow.com/questions/3838774/comma-separator-for-numbers-in-r –

回答

3

你可以試試這個:

x <- 123456789101112 
formatC(x, format="f", big.mark = ",", digits=0) 
#[1] "123,456,789,101,112" 

當然,只要你喜歡,你可以改變「big.mark」的入口,例如,用空格代替它。

+0

謝謝。它的簡單和方便的解決方案,但它不適用於大數字(大於11位數字)。 – max04

+0

@MariuszLiksza您可以嘗試更改爲'format ='f'' – akrun

+0

@MariuszLiksza請檢查編輯後的版本。對於大整數,最好使用'format =「f」'轉換爲浮點數,正如我最初發布的和@akrun建議的那樣。 – RHertel

3

通過正則表達式,

gsub("(?!^)(?=(?:\\d{3})+$)", ".", '53332', perl=T) 
# [1] "53.332" 
gsub("(?!^)(?=(?:\\d{3})+$)", ".", '533382', perl=T) 
# [1] "533.382" 
gsub("(?!^)(?=(?:\\d{3})+$)", ".", '5333829', perl=T) 
# [1] "5.333.829" 
gsub("(?!^)(?=(?:\\d{3})+$)", ",", '5333829', perl=T) 
# [1] "5,333,829"