كيفية إجراء صلة خارجية في الباندا (مع مثال)


الصلة الخارجية هي نوع من الصلة التي تُرجع كافة الصفوف من اثنين من الباندا DataFrames.

يمكنك استخدام بناء الجملة الأساسي التالي لإجراء صلة خارجية في الباندا:

 import pandas as pd

df1. merge (df2, on=' some_column ', how=' outer ')

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

مثال: كيفية إجراء صلة خارجية في Pandas

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

 import pandas as pd

#createDataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                    ' points ': [18, 22, 19, 14, 14, 11, 20, 28]})

df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'J', 'K'],
                    ' assists ': [4, 9, 14, 13, 10, 8]})

#view DataFrames
print (df1)

  team points
0 to 18
1 B 22
2 C 19
3 D 14
4 E 14
5 F 11
6 G 20
7:28 a.m.

print (df2)

  team assists
0 to 4
1 B 9
2 C 14
3 D 13
4 D 10
5K 8

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

 #perform outer join
df1. merge (df2, on=' team ', how=' outer ')


        team points assists
0 to 18.0 4.0
1 B 22.0 9.0
2 C 19.0 14.0
3D 14.0 13.0
4 E 14.0 NaN
5 F 11.0 NaN
6G 20.0 NaN
7 H 28.0 NaN
8 J NaN 10.0
9K NaN 8.0

والنتيجة هي DataFrame الذي يحتوي على كافة الصفوف في كل DataFrame.

لاحظ أنه تم ملء قيم NaN لكل صف حيث لم تكن قيمة عمود الفريق موجودة في كلا DataFrames.

ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة الدمج هنا .

مصادر إضافية

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

كيفية إجراء عملية مكافحة الانضمام في الباندا
كيفية إجراء صلة داخلية في الباندا
كيفية إجراء صلة متقاطعة في الباندا

Add a Comment

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