كيفية إجراء صلة يسارية باستخدام الأعمدة المحددة في dplyr


يمكنك استخدام بناء الجملة الأساسي التالي في dplyr لإجراء صلة يسارية على إطاري بيانات باستخدام الأعمدة المحددة فقط:

 library (dplyr)

final_df <- df_A %>% 
  left_join(select(df_B, team, conference), by=" team ")

سيؤدي هذا المثال تحديدًا إلى إجراء صلة يسارية على إطارات بيانات تسمى df_A و df_B ، والانضمام إلى العمود المسمى team ، ولكن سيتم تضمين عمودي الفريق والمؤتمر فقط في df_B في إطار البيانات الناتج.

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

مثال: إجراء صلة يسرى باستخدام الأعمدة المحددة في dplyr

لنفترض أن لدينا إطاري البيانات التاليين في R:

 #create first data frame
df_A <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                   dots=c(22, 25, 19, 14, 38))

df_A

  team points
1 to 22
2 B 25
3 C 19
4 D 14
5 E 38

#create second data frame
df_B <- data. frame (team=c('A', 'C', 'D', 'F', 'G'),
                   conference=c('W', 'W', 'E', 'E', 'E'),
                   rebounds=c(14, 8, 8, 6, 9),
                   assists=c(4, 3, 9, 9, 4))

df_B

  team conference rebounds assists
1 AW 14 4
2 CW 8 3
3 OF 8 9
4 FE 6 9
5 GE 9 4

يمكننا استخدام بناء الجملة التالي في dplyr لإجراء صلة يسارية ولكن فقط جلب أعمدة الفريق والمؤتمر من df_B :

 library (dplyr)

#perform left join but only bring in team and conference columns from df_B
final_df <- df_A %>% 
  left_join(select(df_B, team, conference), by=" team ")

#view final data frame
final_df

  team points conference
1A 22W
2 B 25 NA
3C 19W
4 D 14 E
5 E 38 NA

يحتوي إطار البيانات الناتج على جميع الصفوف من df_A والصفوف فقط من df_B حيث تتطابق قيم الفريق .

باستخدام وظيفة التحديد () الخاصة بـ dplyr، تمكنا من تحديد أننا أردنا فقط استيراد أعمدة الفريق والمؤتمر من df_B .

لاحظ أن الأعمدة المرتدة والمساعدة من df_B لم يتم تضمينها في إطار البيانات النهائي.

ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة left_join() في dplyr هنا .

مصادر إضافية

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

كيفية القيام بالانضمام الأيسر في R
كيفية القيام بالانضمام الصحيح في R
كيفية القيام بصلة داخلية في R
كيفية القيام بصلة خارجية في R

Add a Comment

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