pandas.Index.shift
- Index.shift(periods=1, freq=None)[source]
-
Смещение индекса на заданное количество интервалов временной частоты.
Этот метод предназначен для смещения значений индексов типа datetime на заданный интервал времени определенное количество раз.
- Параметры
-
- periods:int, по умолчанию 1
-
Количество интервалов (или приращений) смещения, может быть положительным или отрицательным.
- freq:pandas.DateOffset, pandas.Timedelta или str, необязательно
-
Интервал частоты смещения. Если None, индекс смещается на свой собственный атрибут freq. Псевдонимы смещений являются допустимыми строками, например, ‘D’, ‘W’, ‘M’ и т. д.
- Возвращаемое значение
-
- pandas.Index
-
Смещенный индекс.
См. также
Series.shift-
Смещение значений Series.
Примечания
Этот метод реализован только для индексов типа datetime, т.е. DatetimeIndex, PeriodIndex и TimedeltaIndex.
Примеры
Поместите первые 5 начальных дат месяцев 2011 года в индекс.
>>> month_starts = pd.date_range('1/1/2011', periods=5, freq='MS') >>> month_starts DatetimeIndex(['2011-01-01', '2011-02-01', '2011-03-01', '2011-04-01', '2011-05-01'], dtype='datetime64[ns]', freq='MS')Смещение индекса на 10 дней.
>>> month_starts.shift(10, freq='D') DatetimeIndex(['2011-01-11', '2011-02-11', '2011-03-11', '2011-04-11', '2011-05-11'], dtype='datetime64[ns]', freq=None)Значение по умолчанию для freq — это атрибут freq индекса, который в данном примере равен ‘MS’ (начало месяца).
>>> month_starts.shift(10) DatetimeIndex(['2011-11-01', '2011-12-01', '2012-01-01', '2012-02-01', '2012-03-01'], dtype='datetime64[ns]', freq='MS')
© 2008–2022, 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/1.5.0/reference/api/pandas.Index.shift.html