पांडा: क्रॉसटैब() फ़ंक्शन में एगफंक का उपयोग कैसे करें
आप एक क्रॉसस्टैब बनाने के लिए पांडा क्रॉसस्टैब() फ़ंक्शन में एगफंक तर्क का उपयोग कर सकते हैं जो एक विशिष्ट मीट्रिक का उपयोग करके मूल्यों को एकत्रित करता है:
p.d. crosstab (index=df. col1 , columns=df. col2 , values=df. col3 , aggfunc=' count ')
एग्गफंक का डिफ़ॉल्ट मान “गिनती” है, लेकिन आप अन्य एकत्रीकरण विधियां जैसे औसत, औसत, योग, न्यूनतम, अधिकतम इत्यादि निर्दिष्ट कर सकते हैं।
आप aggfunc तर्क में एकाधिक एकत्रीकरण विधियाँ भी निर्दिष्ट कर सकते हैं:
p.d. crosstab (index=df. col1 , columns=df. col2 , values=df. col3 , aggfunc=[' min ', ' max '])
निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित पांडा डेटाफ़्रेम के साथ अभ्यास में इनमें से प्रत्येक विधि का उपयोग कैसे करें:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C '], ' position ':['G', 'G', 'F', 'G', 'F', 'F', 'F', 'G', 'G', 'F', 'F'], ' points ': [22, 25, 24, 39, 34, 20, 18, 17, 20, 19, 22]}) #view DataFrame print (df) team position points 0 AG 22 1 AG 25 2 AF 24 3 BG 39 4 BF 34 5 BF 20 6 BF 18 7 GC 17 8 GC 20 9 CF 19 10 CF 22
उदाहरण 1: aggfunc में मान के साथ एक क्रॉसस्टैब बनाएं
हम एक क्रॉसस्टैब बनाने के लिए aggfunc=’mean’ तर्क के साथ निम्नलिखित क्रॉसस्टैब() फ़ंक्शन का उपयोग कर सकते हैं जो प्रत्येक स्थिति और टीम संयोजन के लिए औसत मूल्य बिंदु प्रदर्शित करता है:
#create crosstab that displays mean points value by team and position p.d. crosstab (index=df. team , columns=df. position , values=df. points , aggfunc=' mean ') position F G team A 24.0 23.5 B 24.0 39.0 C 20.5 18.5
यहां परिणाम की व्याख्या करने का तरीका बताया गया है:
- स्थान F पर टीम A के खिलाड़ियों के औसत अंक 24 हैं।
- स्थिति G में टीम A के खिलाड़ियों के औसत अंक 23.5 हैं।
और इसी तरह।
हम एक अन्य एकत्रीकरण मीट्रिक का भी उपयोग कर सकते हैं, जैसे अधिकतम मूल्य:
#create crosstab that displays max points value by team and position p.d. crosstab (index=df. team , columns=df. position , values=df. points , aggfunc=' max ') position F G team At 24 25 B 34 39 C 22 20
यहां परिणाम की व्याख्या करने का तरीका बताया गया है:
- स्थिति F में टीम A के खिलाड़ियों के लिए अधिकतम अंक 24 हैं।
- टीम A में स्थिति G पर खिलाड़ियों के लिए अधिकतम अंक 25 है।
और इसी तरह।
उदाहरण 2: aggfunc में एकाधिक मानों के साथ एक क्रॉसस्टैब बनाएं
हम प्रत्येक स्थिति और टीम संयोजन के लिए कई मेट्रिक्स द्वारा बिंदु मानों को एकत्रित करने के लिए aggfunc तर्क में एकाधिक मानों के साथ क्रॉसटैब() फ़ंक्शन का उपयोग कर सकते हैं:
#create crosstab that displays min and max points by team and position p.d. crosstab (df. team , df. position , df. points , aggfunc=[' min ', ' max ']) min max position F G F G team A 24 22 24 25 B 18 39 34 39 C 19 17 22 20
यहां परिणाम की व्याख्या करने का तरीका बताया गया है:
- स्थिति F में टीम A के खिलाड़ियों के लिए न्यूनतम अंक मान 24 है।
- स्थिति G में टीम A के खिलाड़ियों के लिए न्यूनतम अंक मान 22 है।
- स्थिति F में टीम A के खिलाड़ियों के लिए अधिकतम अंक मान 24 है।
- स्थिति G में टीम A के खिलाड़ियों के लिए अधिकतम अंक मान 25 है।
और इसी तरह।
नोट : आप पांडा क्रॉसटैब() फ़ंक्शन का पूरा दस्तावेज़ यहां पा सकते हैं।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि अन्य सामान्य पांडा कार्य कैसे करें:
पांडा: प्रतिशत के साथ क्रॉसस्टैब कैसे बनाएं
पांडा: ग्रुपबी और वैल्यू काउंट का उपयोग कैसे करें
पांडा: बिन गिनती के साथ GroupBy का उपयोग कैसे करें