الباندا: كيفية حساب مجموعات فريدة من عمودين
يمكنك استخدام بناء الجملة التالي لحساب عدد المجموعات الفريدة عبر عمودين في pandas DataFrame:
df[[' col1 ', ' col2 ']]. value_counts (). reset_index (name=' count ')
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: حساب مجموعات فريدة من عمودين في الباندا
لنفترض أن لدينا DataFrame الباندا التالي الذي يوضح الفريق وموقع لاعبي كرة السلة المختلفين:
import pandas as pd #create dataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Mavs', 'Mavs', 'Heat', 'Heat', 'Heat', 'Heat'], ' position ': ['Guard', 'Guard', 'Guard', 'Forward', 'Guard', 'Forward', 'Forward', 'Guard']}) #view DataFrame df team position 0 Mavs Guard 1 Mavs Guard 2 Mavs Guard 3 Mavs Forward 4 Heat Guard 5 Heat Forward 6 Heat Forward 7 Heat Guard
يمكننا استخدام الصيغة التالية لحساب عدد مجموعات الفريق والمناصب الفريدة:
df[[' team ', ' position ']]. value_counts (). reset_index (name=' count ') team position count 0 Mavs Guard 3 1 Heat Forward 2 2 Heat Guard 2 3 Mavs Forward 1
ومن النتيجة يمكننا أن نرى:
- هناك 3 تكرارات لمجموعة Mavs-Guard.
- هناك حدثان لتركيبة Heat-Forward.
- هناك حدثان لمجموعة Heat-Guard.
- هناك تواجد واحد لمجموعة Mavs-Forward.
لاحظ أنه يمكنك أيضًا فرز النتائج بترتيب تصاعدي أو تنازلي.
على سبيل المثال، يمكننا استخدام الكود التالي لفرز النتائج بترتيب تصاعدي من حيث العدد:
df[[' team ', ' position ']]. value_counts (ascending= True ). reset_index (name=' count ') team position count 0 Mavs Forward 1 1 Heat Forward 2 2 Heat Guard 2 3 Mavs Guard 3
يتم الآن فرز النتائج حسب العدد، من الأصغر إلى الأكبر.
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة Pandas value_counts() هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:
الباندا: كيفية استخدام GroupBy وأعداد القيمة
الباندا: كيفية استخدام GroupBy مع عدد الصناديق
الباندا: كيفية إنشاء جدول محوري بعدد القيم