我有一个类似的数据框架:
year quarter value
2000 Q1 10
2000 Q2 12
2000 Q3 13
2000 Q4 13
2001 Q1 14
2001 Q2 15
2001 Q3 16
2001 Q4 12
我想计算不同年份相同季度之间的差异2001q1-2000q1,在这种情况下14-10 = 4。
我该如何以通用的方式进行,例如,如果我想计算2个季度而不是4个季度?
您可以将周期数传递给 DataFrame.diff
In [18]: df['value'].diff(4)
Out[18]:
0 NaN
1 NaN
2 NaN
3 NaN
4 4
5 3
6 3
7 -1
Name: value, dtype: float64
我也建议将年度和四分之一列组合到一个DatetimeIndex
中,但这不是严格的。