2016-06-22 13 views
0

xメンバー以上のグループをグループ化したデータフレームの中から選択する方法はありますか?以下のようなxメンバー以上のグループを選択

何か:私は、ドキュメント内またはSO上で解決策を見つけることができません

grouped = df.groupby(['a', 'b']) 
dupes = [g[['a', 'b', 'c', 'd']] for _, g in grouped if len(g) > 1] 

答えて

1

使用filter

grouped.filter(lambda x: len(x) > 1) 

例:

In [64]: 
df = pd.DataFrame({'a':[0,0,1,2],'b':np.arange(4)}) 
df 

Out[64]: 
    a b 
0 0 0 
1 0 1 
2 1 2 
3 2 3 

In [65]: 
df.groupby('a').filter(lambda x: len(x)>1) 

Out[65]: 
    a b 
0 0 0 
1 0 1 
+0

ああ、シンプルな、私がしようとしていたが、上の繰り返し処理を行う場合、それらがもたらしているとして、私のラムダ関数は、GROUP_NAMEとグループを取っていたことグループ化されたdf。ありがとう –

関連する問題