Sas: как использовать опцию where с set
Вы можете использовать опцию WHERE с SET в SAS, чтобы создать новый набор данных, который включает только строки из другого набора данных, в котором соблюдены определенные условия.
Вот два распространенных способа использования этой опции на практике:
Способ 1: используйте WHERE и SET с условием
data new_data;
set my_data ( where = (dots>20));
run ;
В этом примере создается новый набор данных с именем new_data , который включает в себя только строки в my_data , значение которых в столбце точек превышает 20.
Способ 2. Используйте WHERE и SET с несколькими условиями.
data new_data;
set my_data ( where = (points>20 or team="Rockets"));
run ;
В этом примере создается новый набор данных с именем new_data , который включает только те строки в my_data , где значение в столбце Points больше 20 или значение в столбце Team равно Rockets.
В следующих примерах показано, как использовать каждый метод на практике со следующим набором данных в SAS:
/*create dataset*/
data my_data;
input team $points assists;
datalines ;
Mavs 22 10
Rockets 12 14
Spurs 29 8
Kings 13 10
Warriors 44 10
Heat 18 8
Magic 11 5
Pelicans 19 3
Blazers 12 8
;
run ;
/*view dataset*/
proc print data =my_data;
Пример 1. Используйте WHERE и SET с условием
Мы можем использовать следующий синтаксис для создания нового набора данных с именем new_data , который включает только те строки в my_data , где значение в столбце точек больше 20:
/*create new dataset*/
data new_data;
set my_data ( where = (dots>20));
run ;
/*view new dataset*/
proc print data = new_data;
Обратите внимание, что в этот набор данных включены только строки со значением больше 20 в столбце точек .
Пример 2. Использование WHERE и SET с несколькими условиями
Мы можем использовать следующий синтаксис для создания нового набора данных с именем new_data , который включает только те строки в my_data , где значение в столбце «очки» превышает 20 или значение в столбце «команда » равно «Ракеты»:
/*create new dataset*/
data new_data;
set my_data ( where = (points>20 or team="Rockets"));
run ;
/*view new dataset*/
proc print data = new_data;
Обратите внимание, что в этот набор данных включены только строки со значением больше 20 в столбце «Очки » или значением «Ракеты» в столбце « Команда ».
Примечание . Вы можете использовать и вместо или включать только строки, соответствующие более чем одному условию.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как использовать оператор SET с несколькими наборами данных в SAS
Как выбрать первые N строк набора данных в SAS
Как удалить наборы данных в SAS