2016-07-24 33 views
-1

我有这样过滤指标GROUPBY

frame=pd.DataFrame({'Team':['USA','GER','CAN','USA','GER','CAN'], 
       'MOV':[-5,2,0,0,3,4]}) 

帧我可以做一个GROUPBY得到平均 'MOV' 为每个团队

print (frame.groupby('Team')['MOV'].mean()) 

其输出

Team 
CAN 2.0 
GER 2.5 
USA -2.5 
Name: MOV, dtype: float64 

我想用积极的'MOV'返回队列表或数组。在这种情况下“GER”和“CAN”

回答

1
means = frame.groupby('Team')['MOV'].mean() 

print (list(means[means > 0].index)) 

means是一系列然后可以通过取在该系列是大于0的所有值过滤然后采取过滤系列的索引(其将包含国家名称)并将其打印为列表。