【SAS】マクロ入門 置き換え
SASを書く上で、絶対に覚えなければいけないこと。
それはマクロ変数です。
SASマクロは、反復して書かなければならないステートメントを簡略化したり、
ステートメント中のパラメータを可変にして、複数の処理を使えるようにするなどの機能を持ちます。
それをメモがてら書いていきます。
example
%LET TEST = sashelp.aacomp; /* マクロ変数を定義 */
PROC print data = &test. ;
RUN;
%LETで、TESTというマクロ変数を作成し、それに値を入れる。
%let TEST = SASHELP.aacomp;
定義したら、これをコード上で使う場合、 &TEST. というふうにくっつける。
これでマクロ変数がプログラム上で使えるようになる。
PROC print data = &test. ;
これで、マクロ変数を定義して、指定のところに出力できるということがわかったが、次に、きちんと、定義したマクロ変数の中身を確認する癖をつけよう。
%PUT &マクロ変数名;
これによって、マクロ変数に入ってる値を確認できる。
これはプログラムを組んだ直後、かならずテストするようにくせにしよう。
【doステートメントの指定例】
do i=1 to 10; ループの度にiを1ずつ増やし、10回処理を繰り返す
do i=1 to n; n回処理を繰り返す
do i=2 to 10 by 2; iの初期値は2、ループの度に2ずつ増やす
do j=10 to 2 by -2; jの初期値は10、ループの度に2ずつ減らすdo n=1,2,4,8,16; ループの度にnの値を1,2,4,8,16の順に変更する