كيفية البحث عن التكرارات في pandas dataframe (مع أمثلة)


يمكنك استخدام الدالة المكررة () للعثور على قيم مكررة في Pandas DataFrame.

تستخدم هذه الوظيفة بناء الجملة الأساسي التالي:

 #find duplicate rows across all columns
duplicateRows = df[df. duplicated ()]

#find duplicate rows across specific columns
duplicateRows = df[df. duplicated ([' col1 ',' col2 '])]

توضح الأمثلة التالية كيفية استخدام هذه الوظيفة عمليًا مع الباندا DataFrame التالية:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [10, 10, 12, 12, 15, 17, 20, 20],
                   ' assists ': [5, 5, 7, 9, 12, 9, 6, 6]})

#view DataFrame
print (df)

  team points assists
0 to 10 5
1 to 10 5
2 to 12 7
3 to 12 9
4 B 15 12
5 B 17 9
6 B 20 6
7 B 20 6

مثال 1: البحث عن صفوف مكررة في كافة الأعمدة

يوضح التعليمة البرمجية التالية كيفية العثور على صفوف مكررة في كافة أعمدة DataFrame:

 #identify duplicate rows
duplicateRows = df[df. duplicated ()]

#view duplicate rows
duplicateRows

        team points assists
1 to 10 5
7 B 20 6

يوجد صفين مكررين تمامًا لصفوف أخرى في DataFrame.

لاحظ أنه يمكننا أيضًا استخدام الوسيطة keep=’last’ لعرض الأسطر المكررة الأولى بدلاً من الأخيرة:

 #identify duplicate rows
duplicateRows = df[df. duplicated (keep=' last ')]

#view duplicate rows
print (duplicateRows)

	team points assists
0 to 10 5
6 B 20 6

المثال 2: البحث عن صفوف مكررة في أعمدة محددة

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

 #identify duplicate rows across 'team' and 'points' columns
duplicateRows = df[df. duplicated ([' team ',' points '])]

#view duplicate rows
print (duplicateRows)

        team points assists
1 to 10 5
3 to 12 9
7 B 20 6

هناك ثلاثة صفوف تكون فيها القيم الموجودة في أعمدة “الفريق” و”النقاط” نسخًا طبق الأصل من الصفوف السابقة.

مثال 3: البحث عن صفوف مكررة في عمود

يوضح التعليمة البرمجية التالية كيفية البحث عن الصفوف المكررة فقط في عمود “الفريق” في DataFrame:

 #identify duplicate rows in 'team' column
duplicateRows = df[df. duplicated ([' team '])]

#view duplicate rows
print (duplicateRows)

	team points assists
1 to 10 5
2 to 12 7
3 to 12 9
5 B 17 9
6 B 20 6
7 B 20 6

يوجد إجمالي ستة صفوف حيث تكون القيم الموجودة في عمود “الفريق” عبارة عن نسخ مكررة تمامًا من الصفوف السابقة.

مصادر إضافية

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

كيفية إزالة الصفوف المكررة في الباندا
كيفية إزالة الأعمدة المكررة في الباندا
كيفية تحديد الأعمدة حسب الفهرس في Pandas

Add a Comment

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