كيفية إنشاء المتغيرات الفئوية في لغة r (مع أمثلة)
يمكنك استخدام بناء الجملة التالي لإنشاء متغير فئوي في R:
#create categorical variable from scratch cat_variable <- factor(c(' A ', ' B ', ' C ', ' D ')) #create categorical variable (with two possible values) from existing variable cat_variable <- as. factor ( ifelse (existing_variable < 4, 1, 0)) #create categorical variable (with multiple possible values) from existing variable cat_variable <- as. factor ( ifelse (existing_variable < 3, ' A ', ifelse (existing_variable < 4, ' B ', ifelse (existing_variable < 5, ' C ', ifelse (existing_variable < 6, ' D ',0)))))
توضح الأمثلة التالية كيفية استخدام بناء الجملة هذا عمليًا.
المثال 1: إنشاء متغير فئوي من الصفر
يوضح التعليمة البرمجية التالية كيفية إنشاء متغير فئوي من البداية:
#create data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 10, 12), var4=c(14, 16, 22, 19, 18)) #view data frame df var1 var2 var3 var4 1 1 7 3 14 2 3 7 3 16 3 3 8 6 22 4 4 3 10 19 5 5 2 12 18 #add categorical variable named 'type' to data frame df$type <- factor(c(' A ', ' B ', ' B ', ' C ', ' D ')) #view updated data frame df var1 var2 var3 var4 type 1 1 7 3 14 A 2 3 7 3 16 B 3 3 8 6 22 B 4 4 3 10 19 C 5 5 2 12 18 D
مثال 2: إنشاء متغير فئوي (بقيمتين) من متغير موجود
يوضح التعليمة البرمجية التالية كيفية إنشاء متغير فئوي من متغير موجود في إطار بيانات:
#create data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 10, 12), var4=c(14, 16, 22, 19, 18)) #view data frame df var1 var2 var3 var4 1 1 7 3 14 2 3 7 3 16 3 3 8 6 22 4 4 3 10 19 5 5 2 12 18 #add categorical variable named 'type' using values from 'var4' column df$type <- as. factor ( ifelse (df$var1 < 4, 1, 0)) #view updated data frame df var1 var2 var3 var4 type 1 1 7 3 14 1 2 3 7 3 16 1 3 3 8 6 22 1 4 4 3 10 19 0 5 5 2 12 18 0
باستخدام عبارة ifelse() ، أنشأنا متغيرًا فئويًا جديدًا يسمى “type” والذي يأخذ القيم التالية:
- 1 إذا كانت قيمة العمود “var1” أقل من 4.
- 0 إذا كانت القيمة في العمود “var1” لا تقل عن 4.
مثال 3: إنشاء متغير فئوي (بقيم متعددة) من متغير موجود
يوضح التعليمة البرمجية التالية كيفية إنشاء متغير فئوي (بقيم متعددة) من متغير موجود في إطار بيانات:
#create data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 10, 12), var4=c(14, 16, 22, 19, 18)) #view data frame df var1 var2 var3 var4 1 1 7 3 14 2 3 7 3 16 3 3 8 6 22 4 4 3 10 19 5 5 2 12 18 #add categorical variable named 'type' using values from 'var4' column df$type <- as. factor ( ifelse (df$var1 < 3, ' A ', ifelse (df$var1 < 4, ' B ', ifelse (df$var1 < 5, ' C ', ifelse (df$var1 < 6, ' D ', ' E '))))) #view updated data frame df var1 var2 var3 var4 type 1 1 7 3 14 A 2 3 7 3 16 B 3 3 8 6 22 B 4 4 3 10 19 C 5 5 2 12 18 D
باستخدام عبارة ifelse() ، أنشأنا متغيرًا فئويًا جديدًا يسمى “type” والذي يأخذ القيم التالية:
- ” A ” إذا كانت قيمة العمود “var1” أقل من 3.
- بخلاف ذلك، ” B ” إذا كانت القيمة في العمود “var1” أقل من 4.
- بخلاف ذلك، ” C ” إذا كانت القيمة في العمود “var1” أقل من 5.
- بخلاف ذلك، ” D ” إذا كانت القيمة في العمود “var1” أقل من 6.
- وإلا ” ه “.
مصادر إضافية
كيفية إنشاء متغيرات وهمية في R
كيفية تحويل العامل إلى حرف في R
كيفية تحويل الحرف إلى رقمي في R