我有一个这样的Dataframe:
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个季度之间的差异?
答案 0 :(得分:1)
您可以将差异数量传递给差异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
,但这并非绝对必要。