Sas: كيفية استخراج سلسلة فرعية صحيحة
يمكنك استخدام الدالة SUBSTR في SAS لاستخراج جزء من السلسلة.
تستخدم هذه الوظيفة بناء الجملة الأساسي التالي:
SUBSTR(المصدر، الموضع، N)
ذهب:
- المصدر : قناة التحليل
- الموقف : موقف البداية للقراءة
- N : عدد الأحرف المراد قراءتها
تحدد قيمة الوسيطة Position موضع البداية على يسار السلسلة .
لتحديد موضع البداية على يمين السلسلة بدلاً من ذلك، يمكنك استخدام الصيغة التالية:
data new_data;
set original_data;
last_three = substr (team , length (team) -2,3 );
run ;
ينشئ هذا المثال بالتحديد متغيرًا جديدًا يسمى last_three الذي يستخرج الأحرف الثلاثة الأخيرة الموجودة على يمين متغير السلسلة المسمى team .
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: استخراج السلسلة الفرعية من اليمين في SAS
لنفترض أن لدينا مجموعة البيانات التالية في SAS والتي تحتوي على معلومات حول فرق كرة السلة المختلفة:
/*create dataset*/
data original_data;
input team $points;
datalines ;
Mavericks 104
Thunder 99
Rockets 116
Spurs 98
Pistons 99
Pelicans 105
Warriors 119
Blazers 113
Nuggets 100
Kings 123
;
run ;
/*view dataset*/
proc print data = original_data;
يمكننا استخدام الكود التالي لاستخراج آخر 3 أحرف من متغير الفريق :
/*create new dataset*/
data new_data;
set original_data;
last_three = substr (team , length (team) -2,3 );
run ;
/*view new dataset*/
proc print data = new_data;
لاحظ أن العمود المسمى last_three يحتوي على الأحرف الثلاثة الأخيرة من عمود الفريق .
يمكننا أيضًا تغيير قيم دالة SUBSTR بسهولة لاستخراج عدد مختلف من الأحرف من الجانب الأيمن من السلسلة.
على سبيل المثال، يمكننا استخدام الصيغة التالية لاستخراج الأحرف الخمسة الأخيرة من اليمين:
/*create new dataset*/
data new_data;
set original_data;
last_five = substr (team , length (team) -4,5 );
run ;
/*view new dataset*/
proc print data = new_data;
لاحظ أن العمود المسمى last_five يحتوي على آخر خمسة أحرف من عمود الفريق .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في SAS:
SAS: كيفية استبدال الأحرف في سلسلة
SAS: كيفية إزالة الفواصل من السلسلة
SAS: كيفية استخراج الأرقام من سلسلة