pandas.Index.shift#

Index.shift(periods=1, freq=None)[源代码]#

将索引移位所需的时频增量数。

此方法用于将类似DateTime的索引值按指定的时间增量移动给定的次数。

参数
periods整型,默认值为1

移位的周期数(或增量数)可以是正数,也可以是负数。

freqPandas.DateOffset,Pandas.Timedelta或str,可选

移位的频率增量。如果没有,则索引将按其自己的方式移位 freq 属性。偏移量别名是有效的字符串,例如‘D’、‘W’、‘M’等。

退货
pandas.Index

移动索引。

参见

Series.shift

级数的移位值。

注意事项

此方法仅针对类似DateTime的索引类实现,即DatetimeIndex、PerodIndex和TimedeltaIndex。

示例

将2011年的前5个月开始放入一个指数中。

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