pandas.Series.diff#

Series.diff(periods=1)[источник]#

Первая дискретная разность элемента.

Вычисляет разность элемента Series по сравнению с другим элементом в Series (по умолчанию с элементом в предыдущей строке).

Параметры:
periodsint, по умолчанию 1

Периоды сдвига для вычисления разности, принимает отрицательные значения.

Возвращает:
Series

Первые разности Series.

Смотрите также

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

Разница с 3-й предыдущей строкой

>>> 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