Pandas在数据处理分析中有着很重要的作用,它有两种核心的数据结构分别是DataFrame和Series,这里主要是基DataFrame来简单学习一下它的两个常用操作函数:diff和shift。因为理解起来比较简单这里就不再累赘了,相关的内容都已经放在代码里面了,下面是具体内容:

#!usr/bin/env python
#encoding:utf-8
from __future__ import division'''
__Author__:沂水寒城
功能:Pandas diff和shift函数学习
''''''
diff函数是用来将数据进行某种移动之后与原数据进行比较得出差异数据
函数形式:
DataFrame.diff(periods=1, axis=0)
参数解释:
periods:移动的幅度
axis:移动的轴(按列移动或者按行移动)shift函数是对数据进行移动的操作
函数形式:
DataFrame.shift(periods=1, freq=None, axis=0)
参数解释:
periods:移动的幅度
axis:移动的轴(按列移动或者按行移动)
shift(n):  n>0,表述数据框向下移动,索引不会移动,只有数据移动,若移动后数据缺失则填充为NaNn<0,表述数据框向上移动,索引不会移动,只有数据移动,若移动后数据缺失则填充为NaN
'''import numpy as np
import pandas as pddef testFunc():'''diff和shift函数学习'''data=np.arange(36).reshape(12,3)print 'data:'print datadf=pd.DataFrame(data)print 'df:'print df.head(5)print df.info()print '-*'*40print df.diff()print '-*'*40print df-df.shift()print '-*'*40print df-df.shift()==df.diff()  #差分操作的两种等价操作print '-*'*40print df.shift(1)print '-*'*40print df.shift(-1)print '-*'*40print df.shift(1,axis=1)print '-*'*40print df.shift(-1,axis=1)if __name__=='__main__':testFunc()

结果如下:

data:
[[ 0  1  2][ 3  4  5][ 6  7  8][ 9 10 11][12 13 14][15 16 17][18 19 20][21 22 23][24 25 26][27 28 29][30 31 32][33 34 35]]
df:0   1   2
0   0   1   2
1   3   4   5
2   6   7   8
3   9  10  11
4  12  13  14
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 12 entries, 0 to 11
Data columns (total 3 columns):
0    12 non-null int32
1    12 non-null int32
2    12 non-null int32
dtypes: int32(3)
memory usage: 216.0 bytes
None
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0    1    2
0   NaN  NaN  NaN
1   3.0  3.0  3.0
2   3.0  3.0  3.0
3   3.0  3.0  3.0
4   3.0  3.0  3.0
5   3.0  3.0  3.0
6   3.0  3.0  3.0
7   3.0  3.0  3.0
8   3.0  3.0  3.0
9   3.0  3.0  3.0
10  3.0  3.0  3.0
11  3.0  3.0  3.0
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0    1    2
0   NaN  NaN  NaN
1   3.0  3.0  3.0
2   3.0  3.0  3.0
3   3.0  3.0  3.0
4   3.0  3.0  3.0
5   3.0  3.0  3.0
6   3.0  3.0  3.0
7   3.0  3.0  3.0
8   3.0  3.0  3.0
9   3.0  3.0  3.0
10  3.0  3.0  3.0
11  3.0  3.0  3.0
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0      1      2
0   False  False  False
1    True   True   True
2    True   True   True
3    True   True   True
4    True   True   True
5    True   True   True
6    True   True   True
7    True   True   True
8    True   True   True
9    True   True   True
10   True   True   True
11   True   True   True
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0     1     2
0    NaN   NaN   NaN
1    0.0   1.0   2.0
2    3.0   4.0   5.0
3    6.0   7.0   8.0
4    9.0  10.0  11.0
5   12.0  13.0  14.0
6   15.0  16.0  17.0
7   18.0  19.0  20.0
8   21.0  22.0  23.0
9   24.0  25.0  26.0
10  27.0  28.0  29.0
11  30.0  31.0  32.0
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0     1     2
0    3.0   4.0   5.0
1    6.0   7.0   8.0
2    9.0  10.0  11.0
3   12.0  13.0  14.0
4   15.0  16.0  17.0
5   18.0  19.0  20.0
6   21.0  22.0  23.0
7   24.0  25.0  26.0
8   27.0  28.0  29.0
9   30.0  31.0  32.0
10  33.0  34.0  35.0
11   NaN   NaN   NaN
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0     1     2
0  NaN   0.0   1.0
1  NaN   3.0   4.0
2  NaN   6.0   7.0
3  NaN   9.0  10.0
4  NaN  12.0  13.0
5  NaN  15.0  16.0
6  NaN  18.0  19.0
7  NaN  21.0  22.0
8  NaN  24.0  25.0
9  NaN  27.0  28.0
10 NaN  30.0  31.0
11 NaN  33.0  34.0
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*0     1   2
0    1.0   2.0 NaN
1    4.0   5.0 NaN
2    7.0   8.0 NaN
3   10.0  11.0 NaN
4   13.0  14.0 NaN
5   16.0  17.0 NaN
6   19.0  20.0 NaN
7   22.0  23.0 NaN
8   25.0  26.0 NaN
9   28.0  29.0 NaN
10  31.0  32.0 NaN
11  34.0  35.0 NaN

Pandas常用函数diff和shift函数学习使用相关推荐

  1. pandas的pct_change()、diff和shift函数

    pct_change()是计算变化率的函数 import pandas as pd df = pd.DataFrame([[1,4,6,7],[2,4,6,12]]).T df.columns=['o ...

  2. python中shift函数_pandas DataFrame.shift()函数

    pandas DataFrame.shift()函数可以把数据移动指定的位数 period参数指定移动的步幅,可以为正为负.axis指定移动的轴,1为行,0为列. eg: 有这样一个DataFrame ...

  3. CDA学习之Pandas - 常用函数和75个高频操作

    目录 一.函数 1.1 常用函数 1.1.1 导⼊数据 1.1.2 导出数据 1.1.3 查看数据 1.1.4 数据选取 1.1.5 数据处理 1.1.6 数据分组和排序 1.1.7 数据合并 1.1 ...

  4. python pandas常用函数学习

    从网上看的一些资料学习一下,有的内容是直接从其他文章中粘贴过来的. pandas 有两个主要的数据结构:Series 和 DataFrame: 1. Series 是一个一维数组对象 ,类似于 Num ...

  5. pandas 常用函数整理

    pandas常用函数整理,作为个人笔记. 仅标记函数大概用途做索引用,具体使用方式请参照pandas官方技术文档. 约定 from pandas import Series, DataFrame im ...

  6. 【Python】精选23个Pandas常用函数

    公众号:尤而小屋 作者:Peter 编辑:Peter 从26个字母中精选出23个Pandas常用的函数,将它们的使用方法介绍给大家.其中o.y.z没有相应的函数. import pandas as p ...

  7. python中shift函数rolling_Pandas Shift函数的基础入门学习笔记

    pandas shift函数基础 在使用pandas的过程中,有时会遇到shift函数,今天就一起来彻底学习下.先来看看帮助文档是怎么说的: >>> import pandas &g ...

  8. 深度盘点:整理100个 Pandas 常用函数

    大家好,Pandas 是 Python 中最频繁.最受欢迎使用的模块之一,本文我将对 pandas 常用操作进行总结. 内容主要涉及:读取数据和保存数据.数据详情信息.数据处理.数据切片.筛选.排序. ...

  9. 对比python字符串函数,学习pandas的str矢量化字符串函数

    1.概述 python字符串应该是python里面最重要的数据类型了,因此学会怎么处理各种各样的字符串,显得尤为重要. 我们不仅要学会怎么处理单个字符串,这个就需要学习"python字符串函 ...

  10. pandas使用shift函数对数数据进行向上偏移(-1)或者向下偏移(1)、索引不移动,移动之后无值的赋值为NaN、将原数据列与偏移后的数据列相加生成新的数据列

    pandas使用shift函数对数数据进行向上偏移(-1)或者向下偏移(1).索引不移动,移动之后无值的赋值为NaN.将原数据列与偏移后的数据列相加生成新的数据列 目录

最新文章

  1. 数据、事实、实体、值对象、事务、不变性
  2. java架构分层_java分层架构概念
  3. ubuntu+idea intellij配置android开发环境
  4. 一些有关使用EF的错误用法展开的思考
  5. C#Convert.ToInt32(bool)方法-将bool值转换为int
  6. tomcat运行出现问题(Starting Tomcat v8.0 Server at localhost' has encountered a problem.)
  7. ssis组件_SSIS脚本组件概述
  8. 386 · Longest Substring with At Most K Distinct Characters最多有k个不同字符的最长子字符串
  9. 185+日系清新预设调色PS/PR/FCPX/达芬奇/AE/通用LUT文艺森系滤镜(含安装教程)
  10. 药品数据查询系统工具(非付费官网50个)
  11. 绕过查杀工具实现lsass转储
  12. 中国细胞治疗第二届年会会议议程
  13. 利用python实现对人物头发及衣服颜色的替换
  14. 基因组变异检测概述(SNP、InDel、SV)
  15. 满口春日清爽 书亦烧仙草刺梨新品上市
  16. JavaScript DOM节点
  17. 《STL源码剖析》-- stl_uninitialized.h
  18. 关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析
  19. 红旗linux 硬件,红旗软硬件兼容性查询 | 中科红旗
  20. 议程速递 | 7月27日分论坛议程一览

热门文章

  1. Excel数据透视表中的值计算
  2. GitLab non-standard SSH port
  3. 主机网络切换后,docker toolbox里的容器网络不通了,解决方法
  4. MySQL查看数据库、表的占用空间大小
  5. CCIELAB之路由重分布之单点双向重分布的汇总路由反馈
  6. 动网论坛“数据库连接出错”处理记-间歇博客
  7. 宫崎峻《となりのトトロ》(龙猫)全剧本(中日对照)(2)
  8. 利用GDAL进行工具开源化改造
  9. 数据结构之线性表代码实现顺序存储,链式存储,静态链表(选自大话数据结构)...
  10. vista下,怎么为一个程序设置UAC的例外?