ج: كيفية دمج إطارات البيانات حسب أسماء الأعمدة
يمكنك استخدام الطرق التالية لدمج إطارات البيانات حسب أسماء الأعمدة في R:
الطريقة الأولى: الدمج بناءً على اسم عمود مطابق
merge(df1, df2, by=' var1 ')
الطريقة الثانية: الدمج بناءً على اسم عمود غير متطابق
merge(df1, df2, by. x = ' var1 ', by. y = ' variable1 ')
الطريقة الثالثة: الدمج بناءً على أسماء الأعمدة المطابقة المتعددة
merge(df1, df2, by=c(' var1 ', ' var2 '))
الطريقة الرابعة: الدمج بناءً على أسماء أعمدة متعددة غير متطابقة
merge(df1, df2, by. x =c(' var1 ', ' var2 '), by. y =c(' variable1 ', ' variable2 '))
توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا.
مثال 1: الدمج بناءً على اسم العمود المطابق
يوضح التعليمة البرمجية التالية كيفية دمج إطاري بيانات في R بناءً على اسم عمود مطابق:
#define data frames
df1 <- data. frame (team=c('A', 'B', 'C', 'D'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team=c('A', 'B', 'C', 'D'),
rebounds=c(22, 31, 29, 20))
#merge based on one column with matching name
merge(df1, df2, by=' team ')
team points rebounds
1 A 88 22
2 B 98 31
3 C 104 29
4 D 100 20
والنتيجة هي إطار بيانات يطابق الصفوف الموجودة في كل إطار بيانات باستخدام عمود الفريق .
المثال 2: الدمج بناءً على اسم عمود غير متطابق
يوضح التعليمة البرمجية التالية كيفية دمج إطاري بيانات في R بناءً على اسم عمود غير متطابق:
#define data frames
df1 <- data. frame (team=c('A', 'B', 'C', 'D'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team_name=c('A', 'B', 'C', 'D'),
rebounds=c(22, 31, 29, 20))
#merge based on one column with unmatched name
merge(df1, df2, by. x = ' team ', by. y = ' team_name ')
team points rebounds
1 A 88 22
2 B 98 31
3 C 104 29
4 D 100 20
والنتيجة هي إطار بيانات يطابق الصفوف باستخدام عمود الفريق في إطار البيانات الأول وعمود اسم_الفريق في إطار البيانات الثاني.
المثال 3: الدمج بناءً على أسماء أعمدة متعددة متطابقة
يوضح التعليمة البرمجية التالية كيفية دمج إطاري بيانات في R بناءً على أسماء أعمدة متعددة متطابقة:
#define data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
position=c('G', 'F', 'G', 'F'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team=c('A', 'A', 'B', 'B'),
position=c('G', 'F', 'G', 'F'),
rebounds=c(22, 31, 29, 20))
#merge based on multiple columns with matching names
merge(df1, df2, by=c(' team ', ' position '))
team position points rebounds
1 AF 98 31
2 AG 88 22
3 BF 100 20
4 BG 104 29
والنتيجة هي إطار بيانات يطابق الصفوف الموجودة في كل إطار بيانات باستخدام عمود الفريق والموضع في كل إطار بيانات.
المثال 4: الدمج بناءً على أسماء أعمدة متعددة غير متطابقة
يوضح التعليمة البرمجية التالية كيفية دمج إطاري بيانات في R بناءً على أسماء أعمدة متعددة غير متطابقة:
#define data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
position=c('G', 'F', 'G', 'F'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team_name=c('A', 'A', 'B', 'B'),
position_name=c('G', 'F', 'G', 'F'),
rebounds=c(22, 31, 29, 20))
#merge based on multiple columns with matching names
merge(df1, df2, by. x =c(' team ', ' position '), by. y =c(' team_name ', ' position_name '))
team position points rebounds
1 AF 98 31
2 AG 88 22
3 BF 100 20
4 BG 104 29
والنتيجة هي إطار بيانات يطابق الصفوف باستخدام أعمدة الفريق والموضع في إطار البيانات الأول وأعمدة اسم_الفريق واسم_الموضع في إطار البيانات الثاني.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ وظائف إطار البيانات الشائعة الأخرى في R:
كيفية القيام بالانضمام الأيسر في R
كيفية القيام بالانضمام الداخلي في R
كيفية إجراء VLOOKUP في R
كيفية إضافة صفوف إلى إطار البيانات في R