الباندا: كيفية استخدام group by مع شرط where


أسهل طريقة لاستخدام المجموعة باستخدام شرط Where في الباندا هي استخدام الدالة query() :

 df. query (" team == 'A' "). groupby ([" position "])[" points "]. mean (). reset_index ()

يحسب هذا المثال بالتحديد متوسط قيمة النقاط ، مجمعة حسب الموضع ، حيث يساوي الفريق “A” في بعض وحدات DataFrame الباندا.

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

مثال: كيفية استخدام Group By مع شرط Where في Pandas

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B'],
                   ' position ': ['G', 'G', 'F', 'F', 'F', 'G', 'G', 'F'],
                   ' points ': [22, 14, 15, 10, 8, 29, 33, 18]})

#view DataFrame
print (df)

  team position points
0 AG 22
1 AG 14
2 AF15
3 AF 10
4 AF 8
5 BG 29
6 BG 33
7 BF 18

يمكننا استخدام الكود التالي لحساب متوسط قيمة النقطة ، مجمعة حسب المركز ، حيث يساوي الفريق “A”:

 #calculate mean value of points, grouped by position, where team == 'A'
df. query (" team == 'A' "). groupby ([" position "])[" points "]. mean (). reset_index ()

        position points
0 F 11.0
1G 18.0

ومن النتيجة يمكننا أن نرى:

  • متوسط قيمة النقاط للاعبين في المركز “F” في الفريق A هو 11 .
  • متوسط قيمة النقاط للاعبين في المركز “G” للفريق A هو 18 .

لاحظ أنه يمكننا أيضًا استخدام عامل التشغيل & في وظيفة الاستعلام () للعثور على الصفوف التي يتم استيفاء شروط متعددة فيها.

على سبيل المثال، يوضح التعليمة البرمجية التالية كيفية حساب متوسط قيمة النقطة ، مجمعة حسب المركز ، حيث يساوي الفريق “A” والمنصب يساوي “G”:

 #calculate mean value of points by position where team is 'A' and position is 'G'
df. query (" team=='A' & position=='G' "). groupby ([" position "])[" points "]. mean (). reset_index ()

	position points
0G 18.0

من النتيجة يمكننا أن نرى أن متوسط قيمة النقاط للاعبين في المركز “G” في الفريق A هو 18 .

وبما أننا حددنا شرطين في الدالة query() ، فقد تم استخدام الصفوف التي تستوفي كلا الشرطين فقط.

مصادر إضافية

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

كيفية إجراء مجموع GroupBy في Pandas
كيفية استخدام Groupby وPlot في Pandas
كيفية حساب القيم الفريدة باستخدام GroupBy في Pandas

Add a Comment

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