2014-03-31 496 views
0

我正在將SAS代碼翻譯爲R,並且由於我是SAS新手,在理解SAS中的數據格式時遇到了一些問題。另外,我無法訪問SAS,因此我無法在樣本數據上嘗試。SAS中的百分比7.4格式

我的代碼片段說 -

Data A; 
    Set A; 
    format Sales_change percent7.4 sales_units comma10.3; 
run; 

我相信comma10.3使價值「數字」像在Excel中的數字格式。即1000000變成1,000,000。但是,percent7.4格式是做什麼的?它是否使0.2364212成爲23.6421%? 如果是這樣,我一直在使用R中的以下行 -

A$Sales_change <- percent(A$Sales_change/1) 

但是,這輪數爲2位小數報告百分比值之前。有人可以告訴我,如果我的理解是正確的,如果是正確的,如何在R中做到這一點?

+0

非常抱歉。我搞砸了。我將SAS代碼轉換爲R. – RHelp

回答

2

這樣的documentation就像所有的SAS文檔都在網上 - 但在這種情況下,它很混亂。

7是格式化輸出的字符寬度,包括小數點,百分號和爲括號表示負值的兩個字符,即使格式化數字是正數。 4是小數點右邊要顯示的位數(只要總長度有空間)。

所以在這裏,你得到23.6%。三位數字加小數點加百分號,加上括號的空格等於7個字符。

(我不知道你確切的需求,也許它不值得在R模擬SAS基於寬度的格式風格的麻煩。)

+0

非常感謝!這有助於。我沒有意識到SAS計數。以及! – RHelp

+0

PERCENT相當獨特,因爲它需要空間來填充負面信息。 COMMA或DOLLAR也可以,但大多數其他格式不關心你是否離開它。具體來說,它優先考慮 - 符號和小數。「但不會優先考慮其他字符,如$,%'。 – Joe