2019年3月1日金曜日

TITLEステートメントでBY値を表示する「#BYLINE、#BYVAL、#BYVAR」




前回は「OPTIONS NOBYLINE」と「#BYLINE」を使ってBYグループ毎に、
  • 改ページを挿入
  • TITLEにBY値を表示
というのをやってみせました。


*** サンプルデータ ;
proc sort data=sashelp.class out=class;
   by age;
run;

*** 「OPTIONS NOBYLINE」と「#BYLINE」を使う ;
options nobyline;
title "#byline";

proc print data=class;
   by age;
run;















そして今回紹介したいこと、
TITLEステートメントには「#BYLINE」以外にも「#BYVAL」「#BYVAR」というのが指定できます。

指定TITLEに表示される値
#BYLINE

BY変数名=BY値
  • 変数にラベルが当てられてる場合はラベルを表示
  • 変数にFORMATが当てられてる場合はFORMATをあてた値を表示

#BYVAL( BY変数名 )
 or
#BYVALn
指定したBY変数の値
  • 変数にFORMATが当てられてる場合はFORMATをあてた値を表示

#BYVAR( BY変数名 )
 or
#BYVARn
指定したBY変数の変数名
  • 変数にラベルが当てられてる場合はラベルを表示




「#BYVALn」と「#BYVARn」の「n」は何個目のBY変数かを指定します。
例えば以下のように書いた場合、

options nobyline;
title "#byvar2";
proc print data=aaa;
   by xx yy;
run;

「#BYVAR2」の「2」は2個目のBY変数「YY」を指しています。





options nobyline;
title "#byval(age) years old";
proc print data=class;
   by age;
run;



options nobyline;
title "#byvar1 = #byval1.years old";
proc print data=class;
   by age;
run;



「#byval1.years」みたいな感じで、#BYと任意のテキストの間にドットを入れてくっつけて表示することも出来ます。




0 件のコメント:

コメントを投稿