كيفية المقارنة بين ثلاثة أعمدة في r (مع مثال)


يمكنك استخدام بناء الجملة الأساسي التالي لمقارنة قيم ثلاثة أعمدة في R:

 df$all_matching <- df$A == df$B & df$B == df$C

يقوم بناء الجملة هذا بإنشاء عمود جديد يسمى all_matching والذي يُرجع TRUE إذا كانت جميع الأعمدة تحتوي على قيم متطابقة، وإلا فإنه يُرجع FALSE .

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: قارن بين ثلاثة أعمدة في R

لنفترض أن لدينا إطار البيانات التالي في R مع ثلاثة أعمدة:

 #create data frame
df <- data. frame (A=c(4, 0, 3, 3, 6, 8, 7, 9, 12),
                 B=c(4, 2, 3, 5, 6, 4, 7, 7, 12),
                 C=c(4, 0, 3, 5, 5, 10, 7, 9, 12))

#view data frame
df

   ABC
1 4 4 4
2 0 2 0
3 3 3 3
4 3 5 5
5 6 6 5
6 8 4 10
7 7 7 7
8 9 7 9
9 12 12 12

يمكننا استخدام الكود التالي لإنشاء عمود جديد يسمى all_matching والذي يُرجع TRUE إذا كانت جميع الأعمدة الثلاثة متطابقة في صف معين و FALSE إذا لم تكن متطابقة:

 #create new column that checks if values in all three columns match
df$all_matching <- df$A == df$B & df$B == df$C

#view updated data frame
df

   ABC all_matching
1 4 4 4 TRUE
2 0 2 0 FALSE
3 3 3 3 TRUE
4 3 5 5 FALSE
5 6 6 5 FALSE
6 8 4 10 FALSE
7 7 7 7 TRUE
8 9 7 9 FALSE
9 12 12 12 TRUE

يشير العمود الجديد المسمى all_matching إلى ما إذا كانت القيم الموجودة في الأعمدة الثلاثة تتطابق في صف معين أم لا.

على سبيل المثال:

  • تتطابق جميع القيم الثلاث في الصف الأول، لذلك يتم إرجاع TRUE .
  • لا تتطابق جميع القيم في الصف الثاني، لذلك يتم إرجاع FALSE .
  • تتطابق جميع القيم الثلاث في الصف الثالث، لذلك يتم إرجاع TRUE .

وما إلى ذلك وهلم جرا.

إذا كنت تريد إرجاع قيم أخرى غير TRUE و FALSE ، فيمكنك تحديد هذه القيم في دالة ifelse() .

على سبيل المثال، يمكننا استخدام الكود التالي لإرجاع “نعم” إذا كانت القيم في جميع الأعمدة الثلاثة متطابقة أو “لا” بخلاف ذلك:

 #create new column that checks if values in all three columns match
df$all_matching <- ifelse(df$A == df$B & df$B == df$C, ' Yes ', ' No ')

#view updated data frame
df

   ABC all_matching
1 4 4 4 Yes
2 0 2 0 No
3 3 3 3 Yes
4 3 5 5 No
5 6 6 5 No
6 8 4 10 No
7 7 7 7 Yes
8 9 7 9 No
9 12 12 12 Yes

يعرض العمود الجديد الآن “Yes” أو “No” بدلاً من TRUE أو FALSE .

مصادر إضافية

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

كيفية التحقق من وجود عمود في إطار البيانات في R
كيفية التحقق مما إذا كان العمود يحتوي على سلسلة في R
كيفية إضافة عمود إلى إطار البيانات في R بناءً على أعمدة أخرى

Add a Comment

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