Как подмножество данных в sas (3 примера)


Вот три наиболее распространенных способа разделения набора данных в SAS:

Способ 1. Выберите, какие столбцы сохранить.

 data new_data;
    set original_data;
    keep var1 var3;
run ;

Способ 2. Выберите, какие столбцы удалить.

 data new_data;
    set original_data;
    dropvar4 ;
run ;

Способ 3. Выберите, какие строки следует сохранить в зависимости от условия.

 data new_data;
    set original_data;
    if var1 < 25 then delete;
run ;

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

 /*create dataset*/
data original_data;
    input team $pointsrebounds;
    datalines ;
Warriors 25 8
Wizards 18 12
Rockets 22 6
Celtics 24 11
Thunder 27 14
Spurs 33 19
Nets 31 20
;
run ;

/*view dataset*/
proc print data = original_data; 

Пример 1. Выберите, какие столбцы сохранить

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

 /*create new dataset*/
data new_data;
    set original_data;
    keep team points;
run ;

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

Пример 2. Выберите столбцы для удаления

Следующий код показывает, как разделить набор данных на подмножества с помощью инструкции DROP для удаления определенных столбцов:

 /*create new dataset*/
data new_data;
    set original_data;
    drop points;
run ;

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

Пример 3. Выбор строк для сохранения в зависимости от условия

Следующий код показывает, как разделить набор данных на подмножество с помощью инструкции DELETE для удаления определенных строк из набора данных, значение которых в столбце точек меньше 25:

 /*create new dataset*/
data new_data;
    set original_data;
    if points < 25 then delete;
run ;

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

Вы также можете использовать оператор ИЛИ « | », чтобы удалить строки, в которых количество очков меньше 25 или подборов меньше 10:

 /*create new dataset*/
data new_data;
    set original_data;
    if points < 25 | rebounds < 10 then delete;
run ;

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

Вы также можете использовать оператор AND « & » для удаления строк, где количество точек меньше 25 , а количество отскоков меньше 10:

 /*create new dataset*/
data new_data;
    set original_data;
    if points < 25 & rebounds < 10 then delete;
run ;

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

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

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

Как переименовать переменные в SAS
Как создать новые переменные в SAS
Как заменить символы в строке в SAS

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

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