كيفية استخدام عامل التشغيل %in% في r (مع أمثلة)
يسمح لك عامل التشغيل %in% في R بتحديد ما إذا كان العنصر ينتمي إلى ناقل أو إطار بيانات أم لا.
يقدم هذا البرنامج التعليمي ثلاثة أمثلة لاستخدام هذه الميزة في سيناريوهات مختلفة.
مثال 1: استخدام %in% مع المتجهات
يمكننا استخدام العامل %in% لتحديد عدد عناصر المتجه التي تنتمي إلى متجه آخر:
#define two vectors of data data1 <- c(3, 5, 7, 7, 14, 19, 22, 25) data2 <- c(1, 2, 3, 4, 5) #produce new vector that contains elements of data1 that are in data2 data1[data1 %in% data2] [1] 3 5
يمكننا أن نرى أن القيمتين 3 و 5 هما العنصران الوحيدان للمتجه المسمى data2 الموجود في المتجه المسمى data1 .
مثال 2: استخدم %in% لتصفية إطارات البيانات
يمكننا أيضًا استخدام عامل التشغيل %in% لتصفية الصفوف في إطار بيانات يحتوي على قيم معينة:
#define data frame df <- data.frame(team=c('A', 'A', 'B', 'B', 'B', 'C'), points=c(67, 72, 77, 89, 84, 97), assists=c(14, 16, 12, 22, 25, 20)) #view data frame df team points assists 1 A 67 14 2 A 72 16 3 B 77 12 4 B 89 22 5 B 84 25 6 C 97 20 #produce new data frame that only contains rows where team is 'B' df_new <- df[df$team %in% c(' B '), ] df_new team points assists 3 B 77 12 4 B 89 22 5 B 84 25 #produce new data frame that only contains rows where team is 'B' or 'C' df_new2 <- df[df$team %in% c(' B ', ' C '), ] df_new2 team points assists 3 B 77 12 4 B 89 22 5 B 84 25 6 C 97 20
مثال 3: استخدم %in% لإنشاء أعمدة إطار البيانات
يمكننا أيضًا استخدام عامل التشغيل %in% لإنشاء أعمدة إطار بيانات جديدة.
على سبيل المثال، يوضح التعليمة البرمجية التالية كيفية إنشاء عمود جديد يسمى القسم الذي يضع الفريقين “A” و”C” على أنهما “شرق” والفرق “B” على أنهما “غرب”:
library (dplyr) #define data frame df <- data.frame(team=c('A', 'A', 'B', 'B', 'B', 'C'), points=c(67, 72, 77, 89, 84, 97), assists=c(14, 16, 12, 22, 25, 20)) #view data frame df team points assists 1 A 67 14 2 A 72 16 3 B 77 12 4 B 89 22 5 B 84 25 6 C 97 20 #create new column called division df$division = if_else (df$team %in% c(' A ', ' C '), ' East ', ' West ') df team points assists division 1 A 67 14 East 2 A 72 16 East 3 B 77 12 West 4 B 89 22 West 5 B 84 25 West 6 C 97 20 East
مصادر إضافية
كيفية دمج عمودين في عمود واحد في R
كيفية إضافة صفوف إلى إطار البيانات في R
كيفية مقارنة عمودين في R