2017-04-04 154 views
0

我有一個由多列組成的數據集,我想通過在Python中使用groupby函數來計算平均值。但是,由於其中一些值爲NAN,因此如果存在NAN值,則該特定組的平均值爲NAN。我想省略這個值,不要將它設置爲零或用任何統計變量填充它,只是省略。如何在pandas中應用groupyby時忽略NaN值

任何想法,我可以如何實現這一目標?

在此先感謝!

+0

我認爲,在默認情況下,平均方法忽略NaN的。請發佈您的代碼。 –

+0

我懷疑你的'NAN'是字符串。 – piRSquared

+0

嗨!謝謝,在之前的計算中,我用這個'pd.np.nan'強制使用NA值。可能這不是做這件事的方法。我如何執行NAN值? –

回答

0

我得到該特定組的平均值是NAN當NAN值 存在

假的! :)

均值將只考慮非空值。你安全我的男人。

1

楠由mean方法忽略:

import pandas as pd 
import numpy as np 

df = pd.DataFrame({'a': [1, 1, 2, 2], 'b': [3., 4., np.nan, 5.]}) 
# a b 
# 0 1 3 
# 1 1 4 
# 2 2 NaN 
# 3 2 5 

df.groupby('a').mean() 
#  b 
# a  
# 1 3.5 
# 2 5.0