Python使用pandas对数据进行差分运算的方法

yipeiwu_com6年前Python基础

如下所示:

>>> import pandas as pd
>>> import numpy as np

# 生成模拟数据
>>> df = pd.DataFrame({'a':np.random.randint(1, 100, 10),\
     'b':np.random.randint(1, 100, 10)},\
    index=map(str, range(10)))
>>> df
    a    b
0  21  54
1  53  28
2  18  87
3  56  40
4  62  34
5  74  10
6   7  78
7  58  79
8  66  80
9  30  21

# 纵向一阶差分,当前行减去上一行
>>> df.diff()
      a      b
0   NaN   NaN
1  32.0 -26.0
2 -35.0  59.0
3  38.0 -47.0
4   6.0  -6.0
5  12.0 -24.0
6 -67.0  68.0
7  51.0   1.0
8   8.0   1.0
9 -36.0 -59.0

# 横向一阶差分,当前列减去左边的列
>>> df.diff(axis=1)
    a      b
0 NaN  33.0
1 NaN -25.0
2 NaN  69.0
3 NaN -16.0
4 NaN -28.0
5 NaN -64.0
6 NaN  71.0
7 NaN  21.0
8 NaN  14.0
9 NaN  -9.0

# 纵向二阶差分
>>> df.diff(periods=2)
      a      b
0   NaN   NaN
1   NaN   NaN
2  -3.0  33.0
3   3.0  12.0
4  44.0 -53.0
5  18.0 -30.0
6 -55.0  44.0
7 -16.0  69.0
8  59.0   2.0
9 -28.0 -58.0

# 纵向二阶差分,丢弃空值
>>> df.diff(periods=2).dropna()
      a     b
2  -3.0  33.0
3   3.0  12.0
4  44.0 -53.0
5  18.0 -30.0
6 -55.0  44.0
7 -16.0  69.0
8  59.0   2.0
9 -28.0 -58.0

以上这篇Python使用pandas对数据进行差分运算的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python编程pygame模块实现移动的小车示例代码

Python编程pygame模块实现移动的小车示例代码

Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚。 最近一个星期学习了一下py...

Python深入06——python的内存管理详解

Python深入06——python的内存管理详解

语言的内存管理是语言设计的一个重要方面。它是决定语言性能的重要因素。无论是C语言的手工管理,还是Java的垃圾回收,都成为语言最重要的特征。这里以Python语言为例子,说明一门动态类型...

python xlsxwriter库生成图表的应用示例

python xlsxwriter库生成图表的应用示例

xlsxwriter可能用过的人并不是很多,不过使用后就会感觉,他的功能让你叹服,除了可以按要求生成你所需要的excel外 还可以加上很形象的各种图,比如柱状图、饼图、折线图等。 xls...

Python解析最简单的验证码

Python解析最简单的验证码

最近在学python,正好遇到学校需要选宿舍,就用python写了一个抢宿舍的软件。其中有一个模块是用来登陆的,登陆的时候需要输入验证码,不过后来发现了直接可以绕过验证码直接登陆的bug...

Python编程实现tail-n查看日志文件的方法

1、函数实现 # -*- coding: utf-8 -*- def tail(filename, n=10): with open(filename, "r") as f:...