पायथन में डेटा ग्रुपिंग कैसे करें: उदाहरणों के साथ
आप पांडा डेटाफ़्रेम पर डेटा ग्रुपिंग करने के लिए निम्नलिखित मूल सिंटैक्स का उपयोग कर सकते हैं:
import pandas as pd #perform binning with 3 bins df[' new_bin '] = pd. qcut (df[' variable_name '], q= 3 )
निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित पांडा डेटाफ़्रेम के साथ व्यवहार में इस सिंटैक्स का उपयोग कैसे करें:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' points ': [4, 4, 7, 8, 12, 13, 15, 18, 22, 23, 23, 25],
' assists ': [2, 5, 4, 7, 7, 8, 5, 4, 5, 11, 13, 8],
' rebounds ': [7, 7, 4, 6, 3, 8, 9, 9, 12, 11, 8, 9]})
#view DataFrame
print (df)
points assists rebounds
0 4 2 7
1 4 5 7
2 7 4 4
3 8 7 6
4 12 7 3
5 13 8 8
6 15 5 9
7 18 4 9
8 22 5 12
9 23 11 11
10 23 13 8
11 25 8 9
उदाहरण 1: मास्टर डेटा ग्रुपिंग करें
निम्नलिखित कोड दिखाता है कि विशिष्ट ब्रेक मार्क्स के साथ qcut() फ़ंक्शन का उपयोग करके पॉइंट वेरिएबल पर डेटा ग्रुपिंग कैसे करें:
#perform data binning on variable points
df[' points_bin '] = pd. qcut (df[' points '], q= 3 )
#view updated DataFrame
print (df)
points assists rebounds points_bin
0 4 2 7 (3,999, 10,667]
1 4 5 7 (3,999, 10,667]
2 7 4 4 (3,999, 10,667]
3 8 7 6 (3,999, 10,667]
4 12 7 3 (10,667, 19,333]
5 13 8 8 (10,667, 19,333]
6 15 5 9 (10,667, 19,333]
7 18 4 9 (10,667, 19,333]
8 22 5 12 (19.333, 25.0]
9 23 11 11 (19.333, 25.0]
10 23 13 8 (19.333, 25.0]
11 25 8 9 (19.333, 25.0]
ध्यान दें कि डेटा फ़्रेम में प्रत्येक पंक्ति को बिंदु कॉलम के मान के आधार पर तीन समूहों में से एक में रखा गया है।
प्रत्येक बिन में कितनी पंक्तियाँ रखी गईं, यह जानने के लिए हम value_counts() फ़ंक्शन का उपयोग कर सकते हैं:
#count frequency of each bin
df[' points_bin ']. value_counts ()
(3,999, 10,667] 4
(10.667, 19.333] 4
(19.333, 25.0] 4
Name: points_bin, dtype: int64
हम देख सकते हैं कि प्रत्येक बिन में 4 अवलोकन हैं।
उदाहरण 2: विशिष्ट मात्राओं के साथ डेटा क्लस्टरिंग करें
हम विशिष्ट मात्राओं का उपयोग करके डेटा क्लस्टरिंग भी कर सकते हैं:
#perform data binning on variable points with specific quantiles
df[' points_bin '] = pd. qcut (df[' points '], q=[0, .2, .4, .6, .8, 1])
#view updated DataFrame
print (df)
points assists rebounds points_bin
0 4 2 7 (3.999, 7.2]
1 4 5 7 (3.999, 7.2]
2 7 4 4 (3.999, 7.2]
3 8 7 6 (7.2, 12.4]
4 12 7 3 (7.2, 12.4]
5 13 8 8 (12.4, 16.8]
6 15 5 9 (12.4, 16.8]
7 18 4 9 (16.8, 22.8]
8 22 5 12 (16.8, 22.8]
9 23 11 11 (22.8, 25.0]
10 23 13 8 (22.8, 25.0]
11 25 8 9 (22.8, 25.0]
उदाहरण 3: लेबल के साथ डेटा समूहीकरण करें
हम विशिष्ट मात्राओं और लेबलों का उपयोग करके डेटा समूहीकरण भी कर सकते हैं:
#perform data binning on points variable with specific quantiles and labels
df[' points_bin '] = pd. qcut (df[' points '],
q=[0, .2, .4, .6, .8, 1],
labels=[' A ',' B ',' C ',' D ',' E '])
#view updated DataFrame
print (df)
points assists rebounds points_bin
0 4 2 7 A
1 4 5 7 A
2 7 4 4 A
3 8 7 6 B
4 12 7 3 B
5 13 8 8 C
6 15 5 9 C
7 18 4 9 D
8 22 5 12 D
9 23 11 11 E
10 23 13 8 E
11 25 8 9 E
ध्यान दें कि प्रत्येक पंक्ति को बिंदु स्तंभ मान के आधार पर एक बिन सौंपा गया है और अक्षरों का उपयोग करके बिन को लेबल किया गया है।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि पांडा में अन्य सामान्य कार्य कैसे करें:
पांडा: value_counts() फ़ंक्शन का उपयोग कैसे करें
पांडा: मानों की संख्या के साथ पिवट टेबल कैसे बनाएं
पांडा: किसी कॉलम में विशिष्ट मान की घटनाओं की गणना कैसे करें