كيفية استخدام select-when في sas (مع مثال)
يمكنك استخدام عبارة SELECT-WHEN في SAS لتعيين قيم لمتغير جديد بناءً على قيم المتغير الفئوي الموجود في مجموعة البيانات.
يستخدم هذا البيان بناء الجملة الأساسي التالي:
data new_data;
set my_data;
select (Existing_Column);
when ('value1') New_Column= 1 ;
when ('value2') New_Column= 2 ;
when ('value3') New_Column= 3 ;
otherwise New_Column= 4 ;
end ;
run ;
ينتج عن بناء الجملة هذا عمودًا جديدًا يسمى New_Column تعتمد قيمه على قيم Existing_Column .
يوضح المثال التالي كيفية استخدام عبارة SELECT-WHEN عمليًا.
مثال: SELECT-WHEN في SAS
لنفترض أن لدينا مجموعة البيانات التالية في SAS والتي تحتوي على معلومات حول العديد من لاعبي كرة السلة:
/*create dataset*/
data my_data;
input team $rating $points;
datalines ;
Mavs Great 22
Mavs Good 29
Mavs OK 15
Mavs Bad 8
Spurs Good 30
Spurs OK 15
Spurs OK 20
Spurs Bad 7
;
run ;
/*view dataset*/
proc print data =my_data;
يمكننا استخدام عبارة SELECT-WHEN التالية لإنشاء متغير جديد يسمى Player_Status تعتمد قيمه على القيمة الموجودة في عمود التصنيف :
/*create new dataset with Player_Status column*/ data new_data; set my_data; select (rating); when ('Great') Player_Status= 1 ; when ('Good') Player_Status= 2 ; when ('OK') Player_Status= 3 ; otherwise Player_Status= 4 ; end ; run ; /*view new dataset*/ proc print data = new_data;
إليك كيفية إنشاء القيم في عمود Player_Status الجديد:
- إذا كان التقييم “ممتاز”، فإن Player_Status حصل على 1 .
- إذا كان التقييم “جيد”، فسيتم تعيين Player_Status إلى 2 .
- إذا كان التقييم “موافق”، فسيتم تعيين Player_Status 3 .
- إذا لم يكن التقييم مساويًا لأي من القيم المحددة مسبقًا، فسيتم تعيين Player_Status 4 .
ملاحظة : يمكنك العثور على الوثائق الكاملة لعبارة SELECT في SAS هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في SAS:
الدليل الكامل للقيام بالحلقات في SAS
كيفية استخدام IF-THEN-DO في SAS