2013-07-17 28 views
22

मूल्यों की संख्या प्राप्त करें मैं निम्नलिखित की तरह एक पांडा DataFrame है:भर में कॉलम-पांडा DataFrame

   A    B    C 
0 192.168.2.85 192.168.2.85 124.43.113.22 
1 192.248.8.183 192.248.8.183 192.168.2.85 
2 192.168.2.161   NaN 192.248.8.183 
3 66.249.74.52   NaN 192.168.2.161 
4   NaN   NaN 66.249.74.52 

मैं कॉलम भर में एक निश्चित मूल्यों की गिनती करना चाहते हैं।

IP   Count 
192.168.2.85 3 #Since this value is there in all coulmns 
192.248.8.183 3 
192.168.2.161 2 
66.249.74.52 2 
124.43.113.22 1 

मैं पंक्तियों में यह करने के लिए जानते हैं कि कैसे, लेकिन स्तंभों के लिए यह कर थोड़ा अजीब है मुझे इस को हल करने के लिए सहायता:? तो मेरी उम्मीद उत्पादन कुछ की तरह है? धन्यवाद।

उत्तर

32

stack यह पहली और फिर value_counts का उपयोग करें:

In [14]: df.stack().value_counts() 
Out[14]: 
192.248.8.183 3 
192.168.2.85  3 
66.249.74.52  2 
192.168.2.161 2 
124.43.113.22 1 
dtype: int64 
+0

धन्यवाद, यह मेरी अपेक्षा है। –

+2

केवल पांडा सीरीज value_counts() का उपयोग कर सकते हैं। Df.stack() का उपयोग करके, आपने अपने डेटाफ्रेम को एक श्रृंखला में बदल दिया। आपका समाधान सही है, लेकिन यह जानकर कि उसने क्यों काम किया, मुझे बहुत मदद मिली। – user3155053

2
df['Counts'] = df[['col1','col2','col3']].groupby(['col1','col2','col3']).transform('count') 
संबंधित मुद्दे