Hoe de %let-instructie in sas te gebruiken (met voorbeelden)
U kunt de %LET- instructie in SAS gebruiken om macrovariabelen te maken waarin waarden kunnen worden opgeslagen die u later in uw programma kunt gebruiken.
De volgende voorbeelden tonen twee veelgebruikte manieren om de %LET- instructie in de praktijk te gebruiken.
Voorbeeld 1: Gebruik de %LET-instructie om een numerieke waarde in SAS op te slaan
Stel dat we de volgende dataset in SAS hebben die informatie bevat over verschillende basketbalspelers:
/*create dataset*/
data my_data;
input team $points;
datalines ;
At 22
At 14
At 23
B 30
B 18
B20
C13
C12
C26
;
run;
/*view dataset*/
proc print data =my_data;
We kunnen de %LET -instructie gebruiken om een macrovariabele te maken met de naam points_cutoff , die de waarde 20 heeft.
We kunnen later naar deze variabele verwijzen door er een ampersand ( & ) voor te gebruiken om een nieuwe dataset te maken met een nieuwe kolom die aangeeft of elke speler meer dan 20 punten heeft gescoord of niet:
/*assign value of 20 to macro variable*/
%let points_cutoff = 20;
/*use macro variable to create new column called good_player*/
data new_data;
set my_data;
good_player = points > &points_cutoff;
run ;
/*view new dataset*/
proc print data = new_data;
Merk op dat de nieuwe kolom met de naam good_player een waarde van 1 bevat als de waarde van de puntenkolom groter is dan 20 of een waarde van 0 als de waarde van de puntenkolom niet groter is dan 20 .
Voorbeeld 2: Gebruik de %LET-instructie om de tekenreekswaarde op te slaan in SAS
We kunnen ook de %LET- instructie in SAS gebruiken om een macrovariabele te maken waarin een tekenreekswaarde wordt opgeslagen.
De volgende code laat zien hoe u de %LET- instructie kunt gebruiken om een variabele te maken met de naam table_title die een waarde voor ‚Basketbalgegevens‘ bevat waarnaar we later kunnen verwijzen om een titel voor de gegevensset af te drukken:
/*create dataset*/
data my_data;
input team $points;
datalines ;
At 22
At 14
At 23
B 30
B 18
B20
C13
C12
C26
;
run ;
/*assign string to macro variable*/
%let table_title = " Basketball Data ";
/*print dataset with title*/
proc print data =my_data;
title &table_title;
run ;
De dataset bevat de titel die we hebben opgegeven in de macrovariabele.
Opmerking : u kunt de volledige documentatie van de SAS LET- instructie vinden hier .
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:
Procedureoverzicht gebruiken in SAS
Proc-tabel gebruiken in SAS
Proc-collatie gebruiken in SAS