पांडा: बिन गिनती के साथ groupby का उपयोग कैसे करें


आप पांडा में किसी अन्य वेरिएबल द्वारा समूहीकृत एक वेरिएबल के बक्सों की संख्या की गणना करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 #define bins
groups = df. groupby ([' group_var ', pd. cut (df. value_var , bins)])

#display bin count by group variable
groups. size (). unstack ()

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: पांडा में डिब्बे की संख्या के साथ GroupBy का उपयोग करें

मान लीजिए कि हमारे पास निम्नलिखित पांडा डेटाफ़्रेम है जो विभिन्न टीमों के बास्केटबॉल खिलाड़ियों द्वारा बनाए गए अंक दिखाता है:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A',
                            'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'],
                   ' points ': [4, 7, 7, 11, 12, 15, 19, 19,
                             5, 5, 11, 12, 14, 14, 15, 15]})

#view DataFrame
print (df)

   team points
0 to 4
1 to 7
2 to 7
3 to 11
4 to 12
5 to 15
6 to 19
7 to 19
8 B 5
9 B 5
10 B 11
11 B 12
12 B 14
13 B 14
14 B 15
15 B 15

हम विशिष्ट डिब्बे में समूहीकृत प्रत्येक टीम के लिए अंकों की आवृत्ति की गणना करने के लिए निम्नलिखित वाक्यविन्यास का उपयोग कर सकते हैं:

 #define groups
groups = df. groupby ([' team ', pd. cut (df. points , [0, 10, 15, 20])])

#display bin count grouped by team
groups. size (). unstack ()

points (0, 10] (10, 15] (15, 20]
  team			
     A 3 3 2
     B 2 6 0

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • कुल मिलाकर, टीम ए के 3 खिलाड़ियों ने 0 से 10 अंक के बीच स्कोर किया।
  • कुल मिलाकर, टीम ए के 3 खिलाड़ियों ने 10 से 15 अंक के बीच स्कोर किया।
  • कुल मिलाकर, टीम ए के 2 खिलाड़ियों ने 15 से 20 अंक के बीच स्कोर किया।

और इसी तरह।

ध्यान दें कि हम pd.cut() फ़ंक्शन में निर्दिष्ट कर सकते हैं कि हमें कौन से डिब्बे चाहिए।

उदाहरण के लिए, हम केवल दो डिब्बे परिभाषित कर सकते हैं:

 #define groups
groups = df. groupby ([' team ', pd. cut (df. points , [0, 10, 20])])

#display bin count grouped by team
groups. size (). unstack ()

points (0, 10] (10, 20]
  team		
     At 3 5
     B 2 6

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • कुल मिलाकर, टीम ए के 3 खिलाड़ियों ने 0 से 10 अंक के बीच स्कोर किया।
  • कुल मिलाकर, टीम ए के 5 खिलाड़ियों ने 10 से 20 अंक के बीच स्कोर किया।
  • कुल मिलाकर, टीम बी के 2 खिलाड़ियों ने 0 से 10 अंक के बीच स्कोर किया।
  • कुल मिलाकर, टीम बी के 6 खिलाड़ियों ने 10 से 20 अंक के बीच स्कोर किया।

नोट 1 : आप GroupBy फ़ंक्शन का पूरा दस्तावेज़ यहां पा सकते हैं।

नोट 2 : आप कट फ़ंक्शन का पूरा दस्तावेज़ यहां पा सकते हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि पांडा में अन्य सामान्य ऑपरेशन कैसे करें:

पांडा: प्रति समूह संचयी योग की गणना कैसे करें
पांडा: समूह द्वारा अद्वितीय मूल्यों की गणना कैसे करें
पांडा: समूह द्वारा मोड की गणना कैसे करें
पांडा: समूह द्वारा सहसंबंध की गणना कैसे करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *