CLASSステートメントが使えるプロシジャ全てに対応している機能か不明(使えてもリファレンスに詳細が記載されていないものがある)なので、
今回は、リファレンスにも詳細記載しているMEANSプロシジャで解説していきます。
* Sample data ;
data DT1; input A B VAL; cards; 1 1 10 2 1 15 . 1 12 . . 13 ;
|
以下よくあるプログラムですが、、、
proc means data=DT1;
var VAL; class A B; run; |
CLASSステートメントを分割して書くことが出来る。
proc means data=DT1;
var VAL; class A; class B; run; |
分割して書けるから何なの?って感じですが、
以下のように「CLASS変数の一部にオプションを適用させたいとき」に便利です。
proc means data=DT1;
var VAL; class A / descending; class B; run; |
上の例では、変数Aのみ降順に出力するよう descendingオプションを設定しています 。
以下では変数Aだけmissingオプションをつけて、欠損値のものも分類として出力させています。
ただし、たとえAが欠損値でも、missingオプションを適用させていないB も欠損値であれば、分類として出力されません。(サンプルデータ4行目)
A
|
B
|
VAL
|
---|---|---|
1 | 1 | 10 |
2 | 1 | 15 |
. | 1 | 12 |
. | . | 13 |
TABULATEプロシジャはCLASSステートメントを使いまくるので、今回の方法が役に立つと思います。
0 件のコメント:
コメントを投稿