在python数据分析中,可以使用shift()方法对dataframe对象的数据进行位置的前滞、后滞移动。

语法

dataframe.shift(periods=1, freq=none, axis=0)

  • periods可以理解为移动幅度的次数,shift默认一次移动1个单位,也默认移动1次(periods默认为1),则移动的长度为1 * periods。
  • periods可以是正数,也可以是负数。负数表示前滞,正数表示后滞。
  • freq是一个可选参数,默认为none,可以设为一个timedelta对象。适用于索引为时间序列数据时。
  • freq为none时,移动的是其他数据的值,即移动periods*1个单位长度。
  • freq部位none时,移动的是时间序列索引的值,移动的长度为periods * freq个单位长度。
  • axis默认为0,表示对列操作。如果为行则表示对行操作。

移动滞后没有对应值的默认为nan。

示例

period为正,无freq

period为负,无freq

period为正,freq为正

如图,索引列的时间序列数据滞后了6天。(二乘以三)

period为正,freq为负

如图,索引列的时间序列数据前滞了9天(三乘以负三)

period为负,freq为负

如图,索引列的时间序列数据滞后了9天(负三乘以负三)

 到此这篇关于python dataframe的shift()方法的使用的文章就介绍到这了,更多相关python dataframe shift() 内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!