SAS9.3からMEANSプロシジャに「
STACKODSOUTPUT (STACKODS でも可)」というオプションが追加されました。
これは結果ビューアの出力と似た形のデータセットを作ることが出来るオプションです。
サンプルデータ作成
data DT1;
input SEX HEI WEI;
cards;
1 165 70
1 155 50
2 160 40
2 150 50
2 149 60
;
|
3つのデータセット出力方法
STACKODSとそれ以外の出力方法もあわせて紹介していきます。
方法1 ・・・ OUTPUTステートメント
proc means data=DT1 n mean nway;
var HEI WEI;
class SEX / missing;
output out=SUM n= mean= / autoname;
run;
データセットSUM
| 1 |
1 |
2 |
2 |
2 |
160 |
60 |
| 2 |
1 |
3 |
3 |
3 |
153 |
50 |
|
方法2 ・・・ ODS OUTPUT
ods output summary=SUM2;
proc means data=DT1 n mean nway;
var HEI WEI;
class SEX / missing ;
run;
ods output close;
データセットSUM2
| 1 |
2 |
HEI |
2 |
160 |
WEI |
2 |
60 |
| 2 |
3 |
HEI |
3 |
153 |
WEI |
3 |
50 |
|
方法3 ・・・ ODS OUTPUTとSTACKODSの組み合わせ (SAS9.3から)
ods output summary=SUM3;
proc means data=DT1 n mean nway STACKODS ;
var HEI WEI;
class SEX / missing ;
run;
ods output close;
結果ビューアの出力
データセットSUM3
| 1 |
2 |
|
HEI |
2 |
160.000000 |
| 1 |
2 |
|
WEI |
2 |
60.000000 |
| 2 |
3 |
1 |
HEI |
3 |
153.000000 |
| 2 |
3 |
|
WEI |
3 |
50.000000 |
|
要望としては、将来他のプロシジャでも対応してほしいですね。
FREQプロシジャとか。。