テーブルの観測値が 0 かどうかを確認し、そうであれば削除する手順はありますか? 各テーブルを手動でチェックして削除する以外に、もっと簡単な方法があると思いました。ループ コマンドを使用していますが、それを使用して生成するほとんどのテーブルにはデータがありますが、観測値が 0 のテーブルもいくつかあります。
誰かが助けてくれたらありがとう。
テーブルの観測値が 0 かどうかを確認し、そうであれば削除する手順はありますか? 各テーブルを手動でチェックして削除する以外に、もっと簡単な方法があると思いました。ループ コマンドを使用していますが、それを使用して生成するほとんどのテーブルにはデータがありますが、観測値が 0 のテーブルもいくつかあります。
誰かが助けてくれたらありがとう。
メタデータを信頼しない理由がないと仮定すると、dictionary.tables を見ることができます。
proc sql;
select memname from dictionary.tables
where libname='WORK' and nobs=0;
quit;
たとえば、それをマクロ変数に取り込み、PROC SQL または PROC DATASETS ステートメントでテーブルを削除できます。
proc sql;
select memname into :dellist separated by ' ' from dictionary.tables
where libname='WORK' and nobs=0;
quit;
proc datasets nolist;
delete &dellist;
quit;