पांडा: प्रतिशत के साथ पिवोटटेबल कैसे बनाएं


आप पांडा में पिवट तालिका में एक कॉलम जोड़ने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं जो एक विशिष्ट कॉलम के लिए कुल का प्रतिशत प्रदर्शित करता है:

 my_table[' % points '] = (my_table[' points ']/my_table[' points ']. sum ())* 100

यह विशेष सिंटैक्स my_table नामक पिवट तालिका में % पॉइंट नामक एक नया कॉलम जोड़ता है जो पॉइंट कॉलम में कुल मानों का प्रतिशत प्रदर्शित करता है।

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

उदाहरण: प्रतिशत के साथ एक पांडा पिवोटटेबल बनाएं

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' position ': ['Guard', 'Guard', 'Forward', 'Forward',
                                'Guard', 'Guard', 'Forward', 'Forward'],
                   ' points ': [22, 30, 14, 15, 19, 30, 23, 20]})

#view DataFrame
print (df)

  team position points
0 A Guard 22
1A Guard 30
2 A Forward 14
3 A Forward 15
4 B Guard 19
5 B Guard 30
6 B Forward 23
7 B Forward 20

हम एक पिवट तालिका बनाने के लिए pivot_table() फ़ंक्शन का उपयोग कर सकते हैं जो टीम और स्थिति के अनुसार अंकों का योग दिखाती है:

 #create pivot table to calculate sum of points by team and position
my_table = pd. pivot_table (df, index=[' team ', ' position '], aggfunc=' sum ')

#view pivot table
print (my_table)

               points
team position        
A Forward 29
     Guard 52
B Forward 43
     Guard 49

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

  • टीम ए के हमलावरों ने कुल 29 अंक बनाए।
  • टीम ए के गार्डों ने कुल 52 अंक बनाए।
  • टीम बी के हमलावरों ने कुल 43 अंक बनाए।
  • टीम बी के गार्डों ने कुल 49 अंक बनाए।

फिर हम % पॉइंट नामक एक नया कॉलम जोड़ने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं जो प्रत्येक पंक्ति के लिए कुल अंकों का प्रतिशत प्रदर्शित करता है:

 #add column that displays points as a percentage of total points
my_table[' % points '] = (my_table[' points ']/my_table[' points ']. sum ())* 100

#view updated pivot table
print (my_table)

               points % points
team position                   
A Forward 29 16.763006
     Guard 52 30.057803
B Forward 43 24.855491
     Guard 49 28.323699

नया % अंक कॉलम अब कुल अंकों के प्रतिशत के रूप में बिंदु मान प्रदर्शित करता है।

यह भी ध्यान दें कि आप प्रतिशत मानों को एक निश्चित संख्या में दशमलव स्थानों तक पूर्णांकित करने के लिए राउंड() फ़ंक्शन का उपयोग कर सकते हैं।

 #add column that displays points as a percentage of total points (rounded)
my_table[' % points '] = round ((my_table[' points ']/my_table[' points ']. sum ())* 100 , 2 )

#view updated pivot table
print (my_table)

               points % points
team position                  
A Forward 29 16.76
     Guard 52 30.06
B Forward 43 24.86
     Guard 49 28.32

प्रतिशत मान अब दो दशमलव स्थानों तक पूर्णांकित कर दिए गए हैं।

नोट : आप पांडा पिवोट_टेबल() फ़ंक्शन का पूरा दस्तावेज़ यहां पा सकते हैं।

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

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

पांडा: पिवट टेबल में फ़िल्टर कैसे जोड़ें
पांडा: कॉलम में मानों के आधार पर पिवट तालिका को कैसे क्रमबद्ध करें
पांडा: मानों के योग के साथ पिवट टेबल कैसे बनाएं

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

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