Como verificar se o conjunto de dados existe no sas (com exemplo)
Você pode usar a seguinte macro no SAS para verificar rapidamente se existe um conjunto de dados:
%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;
Quando você executa esta macro, ela retorna “Conjunto de dados existe” se existir um conjunto de dados.
Caso contrário retornará “Não existe”.
O exemplo a seguir mostra como usar esta macro na prática.
Exemplo: Verifique se o conjunto de dados existe no SAS
Suponha que criemos o seguinte conjunto de dados no SAS chamado 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;
Podemos definir a seguinte macro para verificar se existe um conjunto de dados:
%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;
Podemos então executar esta macro para verificar se o conjunto de dados chamado data1 existe:
/*check if dataset called data1 exists*/
%check_exists (data1);
Quando visualizamos o log, podemos ver que a macro retorna Does Exist já que data1 existe:
Agora suponha que também executemos a macro para verificar se existe um conjunto de dados chamado data2 :
/*check if dataset called data2 exists*/
%check_exists (data2);
Quando olhamos o log, podemos ver que a macro retorna Does Not Exist, pois um conjunto de dados chamado data2 nunca foi criado.
Nota : Você pode encontrar a documentação completa da função EXIST no SAS aqui .
Recursos adicionais
Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:
Como excluir conjuntos de dados no SAS
Como renomear variáveis no SAS
Como criar novas variáveis no SAS