SAS判断一个数据集是否存在

2017-10-26  本文已影响0人  黑色礼帽

在创建数据集的时候,有时需要判断数据集是否存在。
在SAS的帮助文档找到方法;
通过定义,并调用宏的方式实现。

定义一个宏:

%macro checkds(data_set);
  %if %sysfunc(exist(&data_set)) %then %do;
    %put "Data set &data_set. is already exists !";
  %end;
  %else %do;
    %put "Data set &data_set. does not exist !";
    run;
  %end;
%mend checkds;
%checkds(work.a)

"Data set work.a does not exist !"

data a;
  a=1;
run;
%checkds(work.a)

"Data set &data_set. is already exists !"

扩展使用,宏是SAS编程过程中的常用技术,[%sysfunc]中可以使用SAS中大部分内置函数,不过[%if]后可以编写自定义函数,且将[ %put "...!";]替换成自需要的data step 或者 proc step,已达到使用的目的。

上一篇 下一篇

猜你喜欢

热点阅读