Как заменить пропущенные значения нулями в sas
Часто вам может потребоваться заменить отсутствующие значения в наборе данных SAS нулями.
К счастью, это легко сделать, используя простой оператор if then .
Следующие примеры показывают, как на практике заменить пропущенные значения нулями.
Пример 1: Заменить пропущенные значения во всех столбцах
Предположим, у нас есть следующий набор данных в SAS с тремя столбцами, в каждом из которых отсутствуют значения:
/*create dataset*/ data my_data; input xyz; datalines ; 1. 76 2 3 . 2 3 85 4 5 88 2 2 . 1 2 69 5. 94 4 1 . . . 88 4 3 92 ; run ; /*view dataset*/ proc print data =my_data;

Мы можем использовать следующий код для замены пропущенных значений нулями в каждом столбце набора данных:
/*create new dataset with missing values replaced by zero*/
data my_data_new;
set my_data;
array variablesOfInterest _numeric_ ;
do over variablesOfInterest;
if variablesOfInterest=. then variablesOfInterest= 0 ;
end ;
run ;
/*view new dataset*/
proc print data =my_data_new;

Обратите внимание, что пропущенные значения в каждом столбце заменены нулями.
Примечание . Аргумент _numeric_ указывает SAS заменить пропущенные значения нулями в каждом числовом столбце набора данных.
Пример 2. Замена пропущенных значений в определенном столбце
Предположим еще раз, что у нас есть следующий набор данных в SAS с тремя столбцами, в каждом из которых отсутствуют значения:
/*create dataset*/ data my_data; input xyz; datalines ; 1. 76 2 3 . 2 3 85 4 5 88 2 2 . 1 2 69 5. 94 4 1 . . . 88 4 3 92 ; run ; /*view dataset*/ proc print data =my_data;

Мы можем использовать следующий код для замены пропущенных значений нулями только в столбце «y» набора данных:
/*create new dataset with missing values in "y" column replaced by zero*/
data my_data_new;
set my_data;
array variablesOfInterest y;
do over variablesOfInterest;
if variablesOfInterest=. then variablesOfInterest= 0 ;
end ;
run ;
/*view new dataset*/
proc print data =my_data_new;

Обратите внимание, что нулями заменены только пропущенные значения в столбце «y».
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как нормализовать данные в SAS
Как удалить дубликаты в SAS
Как использовать сводку процедур в SAS
Как выбрать наблюдения, которые не равны нулю в SAS