如果不符合条件则运行 sas 脚本

Run sas script if do not fit condition

我想查看工作库中是否存在数据集。如果不是,我需要从本地驱动器导入它 C:\w5

libname yin "C:\w5";
data _null_;
    dsname = "work.base11";
    if exist(dsname, "DATA") then
        put 'data set do exist';
    else %include 'C:\testing.sas';
run;

对于 testing.sas 脚本

libname yin "C:\w5";    
data work.base11;
    set yin.base11;
run;

有错误:

ERROR: Statement is not valid or it is used out of proper order.

SAS 的问题是您不能在 data 步骤中编写 Proc 步骤,反之亦然,这就是您收到错误的原因,下面可能是快速简便的方法检查并导入。

%macro check_n_import();

%if %sysfunc(exist(work.base11)) = 0 %then %do;
libname yin "C:\w5";    
data work.base11;
    set yin.base11;
run;
%end;   

%mend;

%check_n_import;