Как использовать SELECT-WHEN в SAS (с примером)

Как использовать SELECT-WHEN в SAS (с примером)

Вы можете использовать оператор SELECT-WHEN в SAS, чтобы присвоить значения новой переменной на основе значений существующей категориальной переменной в наборе данных.

Этот оператор использует следующий основной синтаксис:

data new_data;
set my_data;
select (Existing_Column);
 when('value1') New_Column= 1 ;
 when('value2') New_Column= 2 ;
 when('value3') New_Column= 3 ;
 otherwise  New_Column= 4 ;
end ;
run ;

Этот синтаксис создает новый столбец с именем New_Column , значения которого зависят от значений в Existing_Column .

В следующем примере показано, как использовать инструкцию SELECT-WHEN на практике.

Пример: SELECT-WHEN в SAS

Предположим, у нас есть следующий набор данных в SAS, который содержит информацию о различных баскетболистах:

/\*create dataset\*/
data my_data;
 input team $ rating $ points;
 datalines ;
Mavs Great 22
Mavs Good 29
Mavs OK 15
Mavs Bad 8
Spurs Good 30
Spurs OK 15
Spurs OK 20
Spurs Bad 7
;
run ;

/\*view dataset\*/
proc print data =my_data; 

Мы можем использовать следующий оператор SELECT-WHEN для создания новой переменной с именем Player_Status , значения которой зависят от значения в столбце рейтинга :

/\*create new dataset with Player_Status column\*/
data new_data;
set my_data;
select (rating);
 when('Great') Player_Status= 1 ;
 when('Good') Player_Status= 2 ;
 when('OK') Player_Status= 3 ;
 otherwise  Player_Status= 4 ;
end ;
run ;

/\*view new dataset\*/
proc print data =new_data; 

Вот как были сгенерированы значения в новом столбце Player_Status :

  • Если рейтинг был равен «Отлично», то Player_Status присваивался 1 .
  • Если рейтинг был равен «Хорошо», то Player_Status присваивался 2 .
  • Если рейтинг был равен «ОК», то Player_Status присваивался 3 .
  • Если рейтинг не был равен ни одному из ранее указанных значений, то Player_Status присваивался 4 .

Примечание.Полную документацию по оператору SELECT в SAS можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

Полное руководство по циклам DO в SAS
Как использовать IF-THEN-DO в SAS

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.