Controleren of de dataset bestaat in sas (met voorbeeld)
U kunt de volgende macro in SAS gebruiken om snel te controleren of een gegevensset bestaat:
%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;
Wanneer u deze macro uitvoert, retourneert deze ‚Gegevenset bestaat‘ als er een gegevensset bestaat.
Anders retourneert het „Bestaat niet“.
Het volgende voorbeeld laat zien hoe u deze macro in de praktijk kunt gebruiken.
Voorbeeld: Controleer of de gegevensset bestaat in SAS
Stel dat we de volgende gegevensset in SAS maken, genaamd 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;
We kunnen de volgende macro definiëren om te controleren of een dataset bestaat:
%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;
We kunnen vervolgens deze macro uitvoeren om te controleren of de gegevensset met de naam data1 bestaat:
/*check if dataset called data1 exists*/
%check_exists (data1);
Wanneer we het logboek bekijken, kunnen we zien dat de macro Does Exist retourneert, aangezien data1 wel bestaat:
Stel nu dat we de macro ook uitvoeren om te controleren of er een dataset met de naam data2 bestaat:
/*check if dataset called data2 exists*/
%check_exists (data2);
Als we naar het logboek kijken, kunnen we zien dat de macro Does Not Exist retourneert, omdat er nooit een gegevensset met de naam data2 is gemaakt.
Opmerking : u kunt hier de volledige documentatie van de EXIST- functie in SAS vinden.
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:
Hoe gegevenssets in SAS te verwijderen
Variabelen hernoemen in SAS
Nieuwe variabelen maken in SAS