पांडा: औसत की गणना करने के लिए ग्रुपबी का उपयोग करें और nan को अनदेखा न करें


एक कॉलम के आधार पर समूह बनाने और दूसरे कॉलम के औसत मूल्य की गणना करने के लिए पांडा ग्रुपबी () फ़ंक्शन का उपयोग करते समय, पांडा डिफ़ॉल्ट रूप से NaN मानों को अनदेखा कर देगा।

यदि आप इसके बजाय किसी कॉलम में NaN मान मौजूद होने पर NaN प्रदर्शित करना चाहते हैं, तो आप निम्नलिखित मूल सिंटैक्स का उपयोग कर सकते हैं:

 df. groupby (' team '). agg ({' points ': lambda x: x. mean (skipna= False )})

यह विशेष उदाहरण टीम कॉलम द्वारा डेटाफ़्रेम की पंक्तियों को समूहित करेगा और फिर NaN मानों को अनदेखा किए बिना पॉइंट कॉलम के औसत मूल्य की गणना करेगा।

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

उदाहरण: पांडा ग्रुपबी() का उपयोग करें और NaN को अनदेखा न करें

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

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
                   ' points ': [15, np.nan, 24, 25, 20, 35, 34, 19, 14, 12]})

#view DataFrame
print (df)

  team points
0 to 15.0
1 A NaN
2 A 24.0
3 A 25.0
4 A 20.0
5 B 35.0
6 B 34.0
7B 19.0
8B 14.0
9B 12.0

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

 #calculate mean of points, grouped by team
df. groupby (' team ')[' points ']. mean ()

team
At 21.0
B 22.8
Name: points, dtype: float64

ध्यान दें कि प्रत्येक टीम के लिए औसत अंक मान लौटाया जाता है, भले ही अंक कॉलम में टीम ए के लिए NaN मान हो।

डिफ़ॉल्ट रूप से, औसत की गणना करते समय पांडा केवल NaN मान को अनदेखा कर देते हैं।

यदि आप वास्तव में NaN मौजूद होने पर NaN को औसत मान के रूप में प्रदर्शित करना चाहते हैं, तो आप निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 #calculate mean points value grouped by team and don't ignore NaNs
df. groupby (' team '). agg ({' points ': lambda x: x. mean (skipna= False )})

      points
team	
To NaN
B 22.8

ध्यान दें कि इस बार टीम ए के लिए औसत बिंदु मान के रूप में एक NaN मान लौटाया गया है।

स्किपना=गलत तर्क का उपयोग करके, हमने पांडा से कहा कि औसत की गणना करते समय NaN मानों को अनदेखा न करें।

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

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

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

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

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