पांडा: ग्रुपबी का उपयोग कैसे करें और सशर्त गिनती कैसे करें


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

 df. groupby (' var1 ')[' var2 ']. apply ( lambda x:(x==' val '). sum ()). reset_index (name=' count ')

यह विशेष सिंटैक्स var1 के आधार पर डेटाफ़्रेम की पंक्तियों को समूहित करता है और फिर उन पंक्तियों की संख्या की गणना करता है जहाँ var2 “वैल” के बराबर है।

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

उदाहरण: पांडा में ग्रुपबी और काउंट विद कंडीशन

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' pos ': ['Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28]})

#view DataFrame
print (df)

  team pos points
0 A Gu 18
1 A Fo 22
2 A Fo 19
3 A Fo 14
4 B Gu 14
5 B Gu 11
6 B Fo 20
7 B Fo 28

निम्नलिखित कोड दिखाता है कि टीम वेरिएबल द्वारा डेटाफ़्रेम को कैसे समूहित किया जाए और उन पंक्तियों की संख्या की गणना की जाए जहां पॉज़ वेरिएबल “गु” के बराबर है:

 #groupby team and count number of 'pos' equal to 'Gu'
df_count = df. groupby (' team ')[' pos ']. apply ( lambda x: (x==' Gu '). sum ()). reset_index (name=' count ')

#view results
print (df_count)

  team count
0 to 1
1 B 2

परिणाम से हम देख सकते हैं:

  • टीम ए में 1 पंक्ति है जहां पॉज़ कॉलम “गु” के बराबर है
  • टीम बी में 2 पंक्तियाँ हैं जहाँ पॉज़ कॉलम “गु” के बराबर है

हम ग्रुपबी निष्पादित करने और संख्यात्मक स्थिति के साथ गिनती करने के लिए समान वाक्यविन्यास का उपयोग कर सकते हैं।

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

 #groupby team and count number of 'points' greater than 15
df_count = df. groupby (' team ')[' points ']. apply ( lambda x: (x>15). sum ()). reset_index (name=' count ')

#view results
print (df_count)

  team count
0 to 3
1 B 2

परिणाम से हम देख सकते हैं:

  • टीम ए में 3 लाइनें हैं जहां अंक कॉलम 15 से अधिक है
  • टीम बी में 2 लाइनें हैं जहां अंक कॉलम 15 से अधिक है

आप किसी ग्रुपबी को निष्पादित करने और अपनी इच्छित किसी विशिष्ट स्थिति के साथ गिनती करने के लिए समान वाक्यविन्यास का उपयोग कर सकते हैं।

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

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

Pandas GroupBy का उपयोग करके अद्वितीय मानों की गणना कैसे करें
पांडास ग्रुपबी में फ़ंक्शन कैसे लागू करें
पांडास ग्रुपबाय से बार प्लॉट कैसे बनाएं

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

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