Как разделить данные в SAS (3 примера)

Как разделить данные в SAS (3 примера)

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

Способ 1: выберите, какие столбцы оставить

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

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

data new_data;
 set original_data;
 drop var4;
run ;

Способ 3: выберите, какие строки сохранить в зависимости от состояния

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

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

/\*create dataset\*/
data original_data;
 input team $ points rebounds;
 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

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