كيفية استبدال القيم المفقودة بالصفر في sas
في كثير من الأحيان، قد ترغب في استبدال القيم المفقودة في مجموعة بيانات SAS بالأصفار.
لحسن الحظ، من السهل القيام بذلك باستخدام عبارة ifthen البسيطة.
توضح الأمثلة التالية كيفية استبدال القيم المفقودة بالأصفار عمليًا.
مثال 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