2026年2月1日日曜日

0件のデータセット作るときに初期化が云々のメッセージって出ないように出来ませんでしたっけ?

変数ラベルや長さなどの変数情報だけを確定させるために0obsのデータセットを作ることがあるのですが、昔はstopステートメントを仕込めば初期化されていませんのメッセージを出さないように出来……ましたよね?0件のデータセット作るときのログに初期化されていませんのメッセージ出るとちょっと嫌だったので……

どうもちょっと前からstopを仕込んでもログに初期化されて~のメッセージが出てる気がするんですよね…そもそも昔からこのメッセージは出ていたのか?手癖で処理していたのでちゃんと覚えてない自分が恨めしい

以下の様に変数aの定義だけ持たせた0件のデータを作成すると、値が無いのでメッセージが出ます

17   data piyo ;

18   attrib  a length = $10 ;

19   run ;

NOTE: 変数aは初期化されていません。  <- これ

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

NOTE: DATA ステートメント処理(合計処理時間):

      処理時間           0.03 秒

      CPU時間            0.01 秒


ここに以下の様にデータステップ内にstopステートメントを仕込むと、このメッセージを出なく出来ていた……ような……あいまいな記憶の記事ですみません。気のせいですかね

21   data piyo ;

22   attrib  a length = $10 ;

23   stop ;

24   run ;

NOTE: 変数aは初期化されていません。 <- これが昔は出なかったような…

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

NOTE: DATA ステートメント処理(合計処理時間):

      処理時間           0.06 秒

      CPU時間            0.01 秒