擅长:python、mysql、java
<p>你的数学似乎有点古怪(例如,<code>2015</code>的最小值是28,那么平均值怎么可能是28?),但是你可以只<code>.groupby</code>前4个字符并计算平均值:</p>
<pre><code>In [6]: df.groupby(df['index'].str.slice(0, 4)).mean()
Out[6]:
cath_date
index
2015 65
2016 88
2017 106
2018 97
</code></pre>