pandas.Series.diff#

Series.diff(periods=1)[源代码][源代码]#

元素的第一个离散差分。

计算 Series 元素与 Series 中另一个元素的差异(默认是上一行的元素)。

参数:
periodsint, 默认 1

用于计算差异的周期数,接受负值。

返回:
系列

序列的第一次差分。

参见

Series.pct_change

在给定周期数内的百分比变化。

Series.shift

通过可选的时间频率将索引移动所需的周期数。

DataFrame.diff

对象的第一个离散差分。

备注

对于布尔型数据类型,这使用 operator.xor() 而不是 operator.sub()。结果根据当前 Series 中的数据类型计算,然而结果的数据类型总是 float64。

例子

与上一行的差异

>>> s = pd.Series([1, 1, 2, 3, 5, 8])
>>> s.diff()
0    NaN
1    0.0
2    1.0
3    1.0
4    2.0
5    3.0
dtype: float64

与前第三行的差异

>>> s.diff(periods=3)
0    NaN
1    NaN
2    NaN
3    2.0
4    4.0
5    6.0
dtype: float64

与下一行的区别

>>> s.diff(periods=-1)
0    0.0
1   -1.0
2   -1.0
3   -2.0
4   -3.0
5    NaN
dtype: float64

输入数据类型中的溢出

>>> s = pd.Series([1, 0], dtype=np.uint8)
>>> s.diff()
0      NaN
1    255.0
dtype: float64