2015-04-06 70 views
9

我想使用兩個千位分隔符格式化數字並指定小數位數。我知道如何分開做,但不能在一起。R中的格式編號,包含逗號分隔符和指定小數位

例如,我用formatthis爲小數:

FormatDecimal <- function(x, k) { 
    return(format(round(as.numeric(x), k), nsmall=k)) 
} 
FormatDecimal(1000.64, 1) # 1000.6 

和千位分隔符,formatC

​​

這些不玩在一起很好,雖然:

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) 

我怎樣才能得到1,000.6

編輯:這與this question不同,它詢問格式化3.14爲3,14(被標記爲可能的dup)。

回答

26

formatformatC:(抱歉,如果我想的東西)

format(round(as.numeric(1000.64), 1), nsmall=1, big.mark=",") # 1,000.6

0
formatC(1000.64, format="f", big.mark=",", digits=1) 

相關問題