擅长:python、mysql、java
<p>您可以定义自定义季度并使用<code>groupby</code></p>
<pre><code># Test data
df = pd.DataFrame({'month': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1, 2],
'year': [2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2001, 2001],
'value': [5.0, 6.0, 8.0, 10.0, 9.0, 11.0, 13.0, 6.0, 8.0, 7, 7, 4, 3.0, 5.0]})
# Custom quarters definition
quarters = {1: 'DJF', 2: 'DJF', 3: 'MAM', 4: 'MAM', 5: 'MAM', 6: 'JJA', 7: 'JJA', 8: 'JJA', 9: 'SON', 10: 'SON', 11: 'SON',
12: 'DJF'}
df = df.set_index(['month'])
# can be grouped by year and quarters
df.groupby(['year',quarters])['value'].mean()
year
2000 DJF 5.000000
JJA 10.000000
MAM 9.000000
SON 7.333333
2001 DJF 4.000000
# or only by quarters according to the needs
df.groupby(quarters)['value'].mean()
DJF 4.600000
JJA 10.000000
MAM 9.000000
SON 7.333333
</code></pre>