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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert