博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pandas常用函数之shift
阅读量:5009 次
发布时间:2019-06-12

本文共 891 字,大约阅读时间需要 2 分钟。

转自:https://sanwen8.cn/p/2241oUa.html

shift函数是对数据进行移动的操作,假如现在有一个DataFrame数据df,如下所示:

index value1
A 0
B 1
C 2
D 3

那么如果执行以下代码:

df.shift()

就会变成如下:

index value1
A NaN
B 0
C 1
D 2

看一下函数原型:

DataFrame.shift(periods=1, freq=None, axis=0)

参数

  • periods:类型为int,表示移动的幅度,可以是正数,也可以是负数,默认值是1,1就表示移动一次,注意这里移动的都是数据,而索引是不移动的,移动之后没有对应值的,就赋值为NaN。
    执行以下代码:
df.shift(2)

就会得到:

index value1
A NaN
B NaN
C 0
D 1

执行:

df.shift(-1)

会得到:

index value1
A 1
B 2
C 3
D NaN
  • freq: DateOffset, timedelta, or time rule string,可选参数,默认值为None,只适用于时间序列,如果这个参数存在,那么会按照参数值移动时间索引,而数据值没有发生变化。例如现在有df1如下:
index value1
2016-06-01 0
2016-06-02 1
2016-06-03 2
2016-06-04 3

执行:

df1.shift(periods=1,freq=datetime.timedelta(1))

会得到:

index | value1
—-|—-
2016-06-02 | 0
2016-06-03 | 1
2016-06-04 | 2
2016-06-05 | 3

    • axis:{0, 1, ‘index’, ‘columns’},表示移动的方向,如果是0或者’index’表示上下移动,如果是1或者’columns’,则会左右移动。

转载于:https://www.cnblogs.com/iamxyq/p/6283334.html

你可能感兴趣的文章
WP7应用开发笔记(18) 本地化与多语言
查看>>
解决 .so文件64与32不兼容问题
查看>>
归并排序法
查看>>
【剑指offer】面试题26:复杂链表的复制
查看>>
spark开发生成EXE
查看>>
Vue 全家桶介绍
查看>>
WPF Bitmap转Imagesource
查看>>
Java compiler level does not match the version of the installed Java project facet.解决方法
查看>>
笔记_小结
查看>>
Linux lsof命令 umount U盘
查看>>
自定义Font
查看>>
linux svn 服务端搭建
查看>>
maven用途、核心概念、用法、常用参数和命令、扩展
查看>>
linux时间同步ntp服务的安装与配置
查看>>
django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法...
查看>>
网络编程-socket并发-粘包问题
查看>>
python 中安装pandas
查看>>
Hibernate 的<generator class="native"></generator>的不同属性含义
查看>>
linux修改root账户的用户名所得的教训
查看>>
【LeetCode】Flatten Binary Tree to Linked List
查看>>