2016年11月22日火曜日

【小ネタ】 CARDSは 「RUN;」 が不要



データステップってふつう 「RUN;」 で締めるのがふつうですよね。
例えば以下プログラムを実行しても、、

data DT1;
  A=1;


SASは「まだ続きがある」と思って、データステップを終わらせてくれません。
続いて以下 RUN; を実行すると「終わりか」と判断してデータステップを終わらせてくれます。

run;

ログ
NOTE: データセットWORK.DT1は1オブザベーション、1変数です。



しかし以下のようにCARDSステートメントがあると、、

data DT1;
input A;
cards;
1
2
3
;

ログ
NOTE: データセットWORK.DT1は3オブザベーション、1変数です。


RUN; がなくても実行出来ちゃいました。
CARDS4、DATALINES、DATALINES4の各ステートメントでも同様でした。


よく分からないけど、そうなのか。
分かっててもなんとなく違和感あるから RUN; つけちゃうけど。

0 件のコメント:

コメントを投稿