2017年4月24日月曜日

プロシジャで変数ラベルに改行を入れる方法



プロシジャ毎に方法が異なるので、それぞれ例をあげていきます。


PROC SQL の場合

以下で使用方法や注意点などを紹介済です。
PROC SQLでの変数ラベルの挙動

proc sql;
 select AGE "#ねん#れい"
 from SASHELP.CLASS;
quit;




PROC PRINT の場合

SPLIT=オプションでラベルの改行文字を設定できます。
以下の例では「#」を改行文字に設定していますが、適当な半角の英数・記号を設定可。

proc print data=SASHELP.CLASS noobs label split="#";
 var AGE;
 label AGE="ねん#れい";
run;


ちなみに「SUMLABEL=」や「GRANDTOTAL_LABEL=」で設定したラベルの場合は改行じゃなくてスペースが挿入されます。



PROC REPORT の場合

SPLIT=オプションが使えます。挙動はPROC PRINTのとは少し異なります。
以下で使用方法を紹介済です。

proc report data=SASHELP.CLASS nowd split="#";
 column AGE;
 define AGE / display "ねん#れい";
run;



別の方法も以下で紹介しています。



その他のプロシジャの場合

ODS LISTING以外の、一部の出力先(ODS HTML, RTFとか)では、インラインフォーマットというものを使って改行できます。
こちらも以下で使用方法や注意点などを紹介済です。
ODS出力時に文字の書式設定をする【インラインフォーマット】

proc freq data=SASHELP.CLASS;
 tables AGE;
 label AGE="ねん(*ESC*){newline 1}れい";
run;



0 件のコメント:

コメントを投稿