पांडा: groupby का उपयोग कैसे करें और समूहों के भीतर क्रमबद्ध करें


आप पांडा डेटाफ़्रेम में पंक्तियों को समूहित करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं और फिर समूहों के भीतर मानों को क्रमबद्ध कर सकते हैं:

 df. sort_values ([' var1 ',' var2 '],ascending= False ). groupby (' var1 '). head ()

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

उदाहरण: पांडा में ग्रुपबी का उपयोग करना और समूहों में सॉर्ट करना

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' store ': ['B', 'B', 'A', 'A', 'B', 'B', 'A', 'A'],
                   ' sales ': [12, 25, 8, 14, 10, 20, 30, 30]})

#view DataFrame
print (df)

  blind sales
0 B 12
1 B 25
2 to 8
3 to 14
4 B 10
5 B 20
6 to 30
7 to 30

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

 #group by store and sort by sales values in descending order
df. sort_values ([' store ', ' sales '],ascending= False ). groupby (' store '). head ()

	blind sales
1 B 25
5 B 20
0 B 12
4 B 10
6 to 30
7 to 30
3 to 14
2 to 8

ध्यान दें कि हम बिक्री मूल्यों को आरोही क्रम में क्रमबद्ध करने के लिए आरोही=गलत तर्क को भी हटा सकते हैं:

 #group by store and sort by sales values in ascending order
df. sort_values ([' store ',' sales ']). groupby (' store '). head ()

	blind sales
2 to 8
3 to 14
6 to 30
7 to 30
4 B 10
0 B 12
5 B 20
1 B 25

ध्यान दें कि हेड() फ़ंक्शन प्रति समूह केवल पहले 5 मान प्रदर्शित करता है।

प्रति समूह शीर्ष n मान प्रदर्शित करने के लिए, इसके बजाय बस हेड(n) का उपयोग करें।

नोट : आप पांडा में ग्रुपबी ऑपरेशन का पूरा दस्तावेज़ यहां पा सकते हैं।

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

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

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

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

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