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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *