Как удалить строки с пропущенными значениями в sas


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

 data new_data;
    set my_data;
    if cmiss(of _all_) then delete;
run ;

В этом конкретном примере создается новый набор данных с именем new_data , в котором были удалены все строки с отсутствующими значениями в исходном наборе данных с именем my_data .

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

Пример: Удаление строк с пропущенными значениями в SAS

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

 /*create dataset*/
data my_data;
    input team $points assists;
    datalines ;
Mavs 113 22
Pacers 95.
Cavs. .
Lakers 114 20
Heat 123 39
Kings. 22
Raptors 105 11
Hawks 95 25
Magic 103 26
Spurs 119.
;
run ;

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

Обратите внимание, что есть несколько строк с пропущенными значениями.

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

 /*create new dataset that removes rows with missing values from existing dataset*/
data new_data;
    set my_data;
    if cmiss(of _all_) then delete;
run ;

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

Мы видим, что все строки с пропущенными значениями были удалены из набора данных.

Примечание №1 . Аргумент _all_ в функции CMISS указывает, что SAS должен искать недостающие значения во всех столбцах в каждой строке.

Примечание №2 : Полную документацию по функции CMISS можно найти здесь .

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

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

Как удалить дубликаты в SAS
Как посчитать пропущенные значения в SAS
Как заменить пропущенные значения нулями в SAS

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

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