SASでは様々な種類のフォーマット(出力形式)が用意されていますが、
今回はpercentNフォーマットを紹介します。
名前から想像つくかもしれませんが、
指定した数値変数を、いわゆるパーセンテージ形式で表示します。
例えば、以下のようなデータセットがあるとき、
2つの変数(ここでは、「currentSales」と「previousSales」)を元に、
前年比を算出する場合には、以下のようなプログラムを作ります。
data temp2 ;
set temp ;
* 前年比算出 ;
year_on_year = currentSales / previousSales ;
run ;
これを実行した結果をVIEWTABLEで表示すると、
のようになります。
percentNフォーマットを使用せずに、これをパーセンテージ形式で表示させるには
100で乗算し、その結果をINT関数やROUND関数で調整します。
percentNフォーマットを使用する場合は、以下のようなプログラムを書きます。
data temp2 ;
format year_on_year percent12. ;
set temp ;
year_on_year = currentSales / previousSales ;
run ;
このプログラムを実行した結果は以下の通りです。
100で乗算する処理を記述していませんが、
いわゆるパーセンテージ形式での表示になっています。
また、
data temp2 ;
format year_on_year percent12.2 ;
set temp ;
year_on_year = currentSales / previousSales ;
run ;
のように記述すると、結果は以下のようになります。
このように、percentNフォーマットを使用すると、
前年比や構成比等の比率をパーセンテージ形式で表示するのに非常に便利ですが、
1つ注意が必要です。
あくまでもフォーマットを指定しているだけなので、実際の値は、下記を見れば一目瞭然ですが、
100で乗算もされていなければ、小数点以下の処理もされていない
もともとの値が格納されています。
パーセンテージ形式で表示されたものを値として格納したい場合は、
year_on_year_c = put(year_on_year, percent12.2) ;
のようにPUT関数で文字変数に変換しなければなりません。
0 件のコメント:
コメントを投稿