擅长:python、mysql、java
<p>为了获得玩家的比例,我们可以创建两个新列,计算玩家总数和外国玩家总数,然后创建第三个列,将聚合的两个列分开</p>
<p>示例-简化数据帧</p>
<pre><code>df = pd.DataFrame(
{'Year': [2010, 2010, 2010, 2010, 2011, 2011, 2011, 2011],
'Foreign Player': [True, True, False, True, False, False, True, True]}
)
Year Foreign Player
0 2010 True
1 2010 True
2 2010 False
3 2010 True
4 2011 False
5 2011 False
6 2011 True
7 2011 True
</code></pre>
<p>数一数行和外国人</p>
<pre><code>df_agg = df.groupby('Year')['Foreign Player'].agg(['count', 'sum'])
</code></pre>
<p>查找比率:</p>
<pre><code>df_agg['ratio'] = df_agg['sum']/df_agg['count']
df_agg
count sum ratio
Year
2010 4 3 0.75
2011 4 2 0.50
</code></pre>