Jak używać instrukcji %let w sas-ie (z przykładami)


Możesz użyć instrukcji %LET w SAS-ie, aby utworzyć makrozmienne, które mogą przechowywać wartości, które możesz później wykorzystać w swoim programie.

Poniższe przykłady pokazują dwa typowe sposoby wykorzystania instrukcji %LET w praktyce.

Przykład 1: Użyj instrukcji %LET do przechowywania wartości numerycznej w SAS-ie

Załóżmy, że mamy następujący zbiór danych w SAS-ie, który zawiera informacje o różnych koszykarzach:

 /*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; 

Możemy użyć instrukcji %LET , aby utworzyć makrozmienną o nazwie point_cutoff , która ma wartość 20 .

Możemy później odwoływać się do tej zmiennej, używając znaku ampersand ( & ) przed nią, aby utworzyć nowy zbiór danych zawierający nową kolumnę wskazującą, czy każdy gracz zdobył więcej niż 20 punktów, czy nie:

 /*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; 

Zauważ, że nowa kolumna o nazwie good_player zawiera wartość 1 , jeśli wartość kolumny punktów jest większa niż 20 lub wartość 0 , jeśli wartość kolumny punktów nie jest większa niż 20 .

Przykład 2: Użyj instrukcji %LET do przechowywania wartości ciągu w SAS-ie

Możemy także użyć instrukcji %LET w SAS-ie, aby utworzyć makrozmienną przechowującą wartość ciągu znaków.

Poniższy kod pokazuje, jak użyć instrukcji %LET do utworzenia zmiennej o nazwie table_title zawierającej wartość „Dane koszykówki”, do której możemy później się odwołać, aby wydrukować tytuł zbioru danych:

 /*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 ; 

Zbiór danych zawiera tytuł określony w makrozmiennej.

Uwaga : można znaleźć pełną dokumentację instrukcji SAS LET   tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:

Jak korzystać ze podsumowania procedur w SAS-ie
Jak używać Proc Tabulate w SAS-ie
Jak korzystać z sortowania Proc w SAS-ie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *