假设:有一个数据帧:
country edition sports Athletes Medals
Germany 1990 Aquatics HAJOS, Alfred silver
Germany 1990 Aquatics HIRSCHMANN, Otto silver
Germany 1990 Aquatics DRIVAS, Dimitrios silver
US 2008 Athletics MALOKINIS, Ioannis silver
US 2008 Athletics HAJOS, Alfred silver
US 2009 Athletics CHASAPIS, Spiridon gold
France 2010 Athletics CHOROPHAS, Efstathios gold
France 2010 golf HAJOS, Alfred silver
France 2011 golf ANDREOU, Joannis silver
我想知道哪个版本发行的银牌最多? 所以我试着用groupby函数来解决这个问题:
df.groupby('Edition')[df['Medal']=='Silver'].count().idxmax()
但它给了我
Key error = 'Columns not found: False, True'
谁能告诉我是什么问题吗?你知道吗
这是你的熊猫数据框:
现在,您只需过滤银牌,然后
groupby
版(注意'Edition'
将抛出KeyError
而不是'edition'
),最后得到计数:df[df['Medal']=='silver'].groupby('edition').size().idxmax()
我试过了,成功了!我刚刚用size()替换了count()
您可以按两列分组以求解:
相关问题 更多 >
编程相关推荐