计算句点或行之间的增量

时间:2014-01-29 15:30:58

标签: python pandas

我有一个这样的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个季度之间的差异?

1 个答案:

答案 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,但这并非绝对必要。