Как проверить, существует ли набор данных в sas (с примером)
Вы можете использовать следующий макрос в SAS, чтобы быстро проверить, существует ли набор данных:
%macro check_exists(data);
%if %sysfunc ( exist (&data.)) %then %do ;
%put Dataset Exists;
%end ;
%else %do ;
%put Dataset Does Not Exist;
%end ;
%mend check_exists;
Когда вы запускаете этот макрос, он возвращает «Набор данных существует», если набор данных существует.
В противном случае он вернет «Не существует».
В следующем примере показано, как использовать этот макрос на практике.
Пример: проверьте, существует ли набор данных в SAS.
Предположим, мы создаем в SAS следующий набор данных с именем data1 :
/*create dataset*/
data data1;
input hours score;
datalines ;
1 64
2 66
4 76
5 73
5 74
6 81
6 83
7 82
8 80
10 88
;
run ;
/*view dataset*/
proc print data =data1;
Мы можем определить следующий макрос, чтобы проверить, существует ли набор данных:
%macro check_exists(data);
%if %sysfunc ( exist (&data.)) %then %do ;
%put Dataset Exists;
%end ;
%else %do ;
%put Dataset Does Not Exist;
%end ;
%mend check_exists;
Затем мы можем запустить этот макрос, чтобы проверить, существует ли набор данных с именем data1 :
/*check if dataset called data1 exists*/
%check_exists (data1);
Просматривая журнал, мы видим, что макрос возвращает «Существует», поскольку data1 существует:
Теперь предположим, что мы также запускаем макрос, чтобы проверить, существует ли набор данных с именем data2 :
/*check if dataset called data2 exists*/
%check_exists (data2);
Просматривая журнал, мы видим, что макрос возвращает значение «Не существует», поскольку набор данных с именем data2 никогда не создавался.
Примечание . Полную документацию по функции EXIST в SAS можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как удалить наборы данных в SAS
Как переименовать переменные в SAS
Как создать новые переменные в SAS