FREQプロシジャでの一元度数表の出力フォーマット変更
[OS] ALL
[リリース] SAS 8.0以降
[キーワード] BASE, FREQ, ONEWAY, FORMAT, ODS, TEMPLATE
[質問]FREQプロシジャを使って一次元の度数集計を行なっていますが、この出力フォーマットを変更するにはどうすればよいでしょうか。
[回答]TEMPLATEプロシジャでテンプレートを加工することで、任意の出力形式を指定することができます。 プログラム例: /* TEMPLATEプロシジャで、テンプレートを加工 */ /* カスタマイズしたい箇所のフォーマットのみを変更します。 */ PROC TEMPLATE; EDIT base.freq.onewayfreqs; PARENT=base.freq.onewaylist; EDIT Frequency; /* 度数 */ FORMAT = COMMA6.; END; EDIT Percent; /* パーセント */ FORMAT = 6.3; END; EDIT CumFrequency; /* 累積度数 */ FORMAT = COMMA6.; END; EDIT CumPercent; /* 累積パーセント */ FORMAT = 6.3; END; END; RUN; /* PROC FREQの実行 */ PROC FREQ data=sashelp.class ; TABLES sex ; RUN ; 出力結果: 累積 累積 Sex 度数 パーセント 度数 パーセント --------------------------------------------------- F 9 47.368 9 47.368 M 10 52.632 19 100.00 また、編集したテンプレートをデフォルトの設定に戻すには、次のプログラムをサブミットしてテンプレートを削除します。 /* テンプレートの削除 */ PROC TEMPLATE; DELETE base.freq.onewayfreqs; RUN; |