الباندا: كيفية مقارنة الأعمدة في إطاري بيانات مختلفين


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

الطريقة الأولى: حساب القيم المطابقة بين الأعمدة

 df1[' my_column ']. isin (df2[' my_column ']). value_counts ()

الطريقة الثانية: إظهار القيم المطابقة بين الأعمدة

 p.d. merge (df1, df2, on=[' my_column '], how=' inner ')

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

 import numpy as np
import pandas as pd

#create first DataFrame
df1 = pd. DataFrame ({' team ': ['Mavs', 'Rockets', 'Spurs', 'Heat', 'Nets'],
                    ' points ': [22, 30, 15, 17, 14]})

#view DataFrame
print (df1)

      team points
0 Mavs 22
1 Rockets 30
2 Spurs 15
3 Heat 17
4 Nets 14

#create second DataFrame
df2 = pd. DataFrame ({' team ': ['Mavs', 'Thunder', 'Spurs', 'Nets', 'Cavs'],
                    ' points ': [25, 40, 31, 32, 22]})

#view DataFrame
print (df2)

      team points
0 Mavs 25
1 Thunder 40
2 Spurs 31
3 Nets 32
4 Cavs 22

مثال 1: حساب القيم المطابقة بين الأعمدة

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

 #count matching values in team columns
df1[' team ']. isin (df2[' team ']). value_counts ()

True 3
False 2
Name: team, dtype: int64

نرى أن إطاري البيانات لهما 3 أسماء فرق مشتركة واسمين مختلفين للفريق.

مثال 2: إظهار القيم المطابقة بين الأعمدة

يوضح الكود التالي كيفية عرض قيم المطابقة الفعلية بين أعمدة الفريق في كل DataFrame:

 #display matching values between team columns
p.d. merge (df1, df2, on=[' team '], how=' inner ')

	team points_x points_y
0 Mavs 22 25
1 Spurs 15 31
2 Nets 14 32

من النتيجة يمكننا أن نرى أن كلا DataFrames لديهما القيم التالية المشتركة في أعمدة الفريق :

  • مافس
  • توتنهام
  • شبكات

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

مصادر إضافية

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

كيفية إعادة تسمية الأعمدة في الباندا
كيفية إضافة عمود إلى Pandas DataFrame
كيفية تغيير ترتيب الأعمدة في Pandas DataFrame

Add a Comment

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