pandas.DataFrame.shift
-
DataFrame.shift(self, periods=1, freq=None, axis=0, fill_value=None)[source] -
Сдвиг индекса на заданное количество периодов с необязательным временным
freq.Когда
freqне передан, индекс сдвигается без перераспределения данных. Еслиfreqпередан (в этом случае индекс должен быть датой или датой и временем, иначе будет выброшено исключениеNotImplementedError), индекс будет увеличен с использованием периода иfreq.Параметры: -
periods : int -
Количество периодов сдвига. Может быть положительным или отрицательным.
-
freq : DateOffset, tseries.offsets, timedelta, or str, optional -
Смещение для использования из модуля tseries или временного правила (например, ‘EOM’). Если
freqуказан, значения индекса сдвигаются, но данные не перераспределяются. То есть, используйтеfreq, если хотите расширить индекс при сдвиге и сохранить исходные данные. -
axis : {0 or ‘index’, 1 or ‘columns’, None}, default None -
Направление сдвига.
-
fill_value : object, optional -
Значение скаляра, используемого для новых пропущенных значений. Значение по умолчанию зависит от типа данных
self. Для числовых данных используетсяnp.nan. Для данных datetime, timedelta или period и т. д. используетсяNaT. Для расширенных типов данных используетсяself.dtype.na_value.Изменено в версии 0.24.0.
Возвращаемое значение: - DataFrame
-
Копия входного объекта, сдвинутого.
См. также
-
Index.shift - Сдвиг значений индекса.
-
DatetimeIndex.shift - Сдвиг значений DatetimeIndex.
-
PeriodIndex.shift - Сдвиг значений PeriodIndex.
-
tshift - Сдвиг временного индекса, используя частоту индекса, если она доступна.
Примеры
>>> df = pd.DataFrame({'Col1': [10, 20, 15, 30, 45], ... 'Col2': [13, 23, 18, 33, 48], ... 'Col3': [17, 27, 22, 37, 52]})>>> df.shift(periods=3) Col1 Col2 Col3 0 NaN NaN NaN 1 NaN NaN NaN 2 NaN NaN NaN 3 10.0 13.0 17.0 4 20.0 23.0 27.0
>>> df.shift(periods=1, axis='columns') Col1 Col2 Col3 0 NaN 10.0 13.0 1 NaN 20.0 23.0 2 NaN 15.0 18.0 3 NaN 30.0 33.0 4 NaN 45.0 48.0
>>> df.shift(periods=3, fill_value=0) Col1 Col2 Col3 0 0 0 0 1 0 0 0 2 0 0 0 3 10 13 17 4 20 23 27
-
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.DataFrame.shift.html