2016-12-31 18 views
3

の平均値を取得する:私は別の値を持つ場合、Bの値の平均値を取得したいのpython:パンダ:1列をフィルタリングし、ように私はPythonのパンダのデータフレームを持っている別の列

a b 
1 5 
3 6 
1 7 
2 8 
2 34 
3 35 
1 54 
3 123 
4 2353 
... .... 

。たとえば、a = 1、b = 5,7,54の場合、平均(a = 1)=(5 + 7 + 54)/ 3となります。a = 2、b = 8,34の場合、平均(a = 2)=(8 + 34)/ 2。

私の試みは

aaa = [] 
for v in df['a']: 
    aaa.append(np.mean(df['b']) 
print (aaa) 

ですが、それは正しくありません。あなたが私を助けることを願っていますありがとうございました !

答えて

5

あなたは集計にgroupbyを使用することができます。

df.groupby('a').b.mean() 

#a 
#1  22.000000 
#2  21.000000 
#3  54.666667 
#4 2353.000000 
#Name: b, dtype: float64 
+0

おかげでそんなに、あなたはどのように代わりに0.75の確率であなたは 'クォンタイルを使用することができます –

+2

mean.thanks()'の上位四分位点を得るために私を伝えることができます。 'df.groupby( 'a')。quantile([0.75])'。 – Psidom

関連する問題