كيفية استخراج الأرقام من السلاسل في لغة r (مع أمثلة)


يمكنك استخدام الطرق التالية لاستخراج الأرقام من السلاسل في R:

الطريقة الأولى: استخراج رقم السلسلة باستخدام القاعدة R

 as. numeric (gsub(" \\D ", "", df$my_column))

الطريقة الثانية: استخراج رقم السلسلة باستخدام حزمة القارئ

 library (readr)

parse_number(df$my_column)

يشرح هذا البرنامج التعليمي كيفية استخدام كل طريقة عمليًا مع إطار البيانات التالي:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Guard23', 'Guard14', '2Forward',
                            'Guard25', '6Forward', 'Center99'))

#view data frame
df

  team position
1A Guard23
2A Guard14
3 A 2Forward
4 B Guard25
5 B 6Forward
6 B Center99

مثال 1: استخراج الرقم من سلسلة باستخدام الأساس R

يوضح الكود التالي كيفية استخراج الأرقام من كل سلسلة في عمود الموضع بإطار البيانات:

 #extract number from each string in 'position' column
as. numeric (gsub(" \\D ", "", df$position))

[1] 23 14 2 25 6 99

لاحظ أنه تم استخراج القيم الرقمية من كل سلسلة في عمود الموضع .

ملاحظة : تقوم الدالة gsub() ببساطة باستبدال كافة الأرقام غير ( \\D ) في سلسلة ذات مساحة فارغة. هذا له تأثير استخراج الأرقام فقط من السلسلة.

إذا أردت، يمكنك أيضًا تخزين هذه القيم الرقمية في عمود جديد في إطار البيانات:

 #create new column that contains numbers from each string in 'position' column
df$num <- as. numeric (gsub(" \\D ", "", df$position))

#view updated data frame
df

  team position number
1A Guard23 23
2A Guard14 14
3 A 2Forward 2
4 B Guard25 25
5 B 6Forward 6
6 B Center99 99

المثال 2: استخراج الرقم من سلسلة باستخدام حزمة Reader

يوضح التعليمة البرمجية التالية كيفية استخراج الأرقام من كل سلسلة في عمود الموضع لإطار البيانات باستخدام وظيفة parse_number() من حزمة القارئ :

 library (readr)

#extract number from each string in 'position' column
parse_number(df$position)

[1] 23 14 2 25 6 99

لاحظ أنه تم استخراج القيم الرقمية من كل سلسلة في عمود الموضع .

وهذا يتوافق مع نتائج استخدام الدالة gsub() في الأساس R.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:

كيفية تحديد الأعمدة التي تحتوي على سلسلة محددة في R
كيفية إزالة الأحرف من سلسلة في R
كيفية العثور على موقع الحرف في سلسلة في R

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *