Sas: як використовувати оператор in у proc sql
Ви можете використовувати оператор IN у операторі PROC SQL у SAS, щоб повертати лише рядки, у яких змінна в наборі даних містить значення зі списку.
У наступному прикладі показано, як використовувати оператор IN на практиці.
Приклад: використання оператора IN у PROC SQL у SAS
Припустімо, що в SAS є такий набір даних, який містить інформацію про різних баскетболістів:
/*create dataset*/
data my_data;
input team $points;
datalines ;
AT 12
At 14
At 15
At 18
B 31
B 32
C 35
C 36
C40
D 28
E20
E 21
;
run ;
/*view dataset*/
proc print data =my_data;
Ми можемо використовувати оператор IN у PROC SQL , щоб вибрати лише ті рядки, де team дорівнює A, B або E:
/*select all rows where team is A, B, or E*/
proc sql ;
select *
from my_data
where team in ('A', 'B', 'E');
quit ;
Зауважте, що повертаються лише ті рядки, де команда дорівнює A, B або E.
Протилежністю оператору IN у PROC SQL є NOT IN , який вибирає рядки, у яких деякі змінні в наборі даних не містять значення в списку.
У наведеному нижче коді показано, як використовувати оператор NOT IN для вибору всіх рядків, де команда не дорівнює A, B або E:
/*select all rows where team is not A, B, or E*/
proc sql ;
select *
from my_data
where team not in ('A', 'B', 'E');
quit ;
Зауважте, що повертаються лише рядки, де команда не дорівнює A, B або E.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в SAS:
SAS: як використовувати UNION у PROC SQL
SAS: як використовувати EXCEPT у PROC SQL
SAS: як використовувати Proc Univariate за групою