<p>我有这个数据帧:</p>
<pre><code> iata airport city state country lat \
0 00M Thigpen Bay Springs MS USA 31.953765
1 00R Livingston Municipal Livingston TX USA 30.685861
2 00V Meadow Lake Colorado Springs CO USA 38.945749
3 01G Perry-Warsaw Perry NY USA 42.741347
4 01J Hilliard Airpark Hilliard FL USA 30.688012
</code></pre>
<p>我想知道每个州的机场数量。例如,如果我有以下函数:</p>
^{pr2}$
<p>其中state是州的缩写,例如“MA”。我试图按输入变量对dataframe进行分组,比如state('MA'),然后得到每个状态的机场数量。在</p>
<p>当我使用:</p>
<pre><code>df.groupby(state)['airport'].value_counts()
</code></pre>
<p>或者</p>
<pre><code>df.groupby(state)['airport'].value_counts()/df['airport'].count()
df.groupby(['state'] == state)['airport'].value_counts()/df['airport'].count()
</code></pre>
<p>最后两个是关于一个选定的机场将处于这种状态的条件概率。在</p>
<p>它抛出一个键错误:“MA”,我认为这是由于输入变量没有被识别为列,而是列中的一个值。在</p>
<p>有没有办法得到每个州的机场数量?在</p>