使用Python的Dataframe取两列时间值相差一年的所有行方法

yipeiwu_com7年前Python基础

在使用Python处理数据时,经常需要对数据筛选。

这是在对时间筛选时,判断两列时间是否相差一年,如果是,则返回符合条件的所有列。

data原始数据:

data[map(lambda x:datetime.date(x.year-1,x.month,x.day),data['report_date'])==data['date_1y_ago']]
 company_id signal_code_x signal_value_x report_date signal_code_y signal_value_y report_date_last date_1y_ago
0  2154888 r_1002030000   0.62660 2015-09-30 r_1002030000   0.64145  2015-12-31 2014-12-31
1  2154888 r_1002030000   0.64145 2015-12-31 r_1002030000   0.64145  2015-12-31 2014-12-31
2  2154888 r_1002030000   0.60544 2015-03-31 r_1002030000   0.64145  2015-12-31 2014-12-31
3  2154888 r_1002030000   0.54911 2014-12-31 r_1002030000   0.64145  2015-12-31 2014-12-31
4  2154888 r_1002030000   0.61379 2015-06-30 r_1002030000   0.64145  2015-12-31 2014-12-31
5  1702887 r_1002030000   0.62173 2014-03-31 r_1002030000   0.51103  2015-03-31 2014-03-31
6  1702887 r_1002030000   0.55175 2014-12-31 r_1002030000   0.51103  2015-03-31 2014-03-31
7  1702887 r_1002030000   0.51103 2015-03-31 r_1002030000   0.51103  2015-03-31 2014-03-31
8  1702887 r_1002030000   0.58696 2014-06-30 r_1002030000   0.51103  2015-03-31 2014-03-31
9  13484491 r_1002030000   0.17658 2014-12-31 r_1002030000   0.41082  2015-12-31 2014-12-31
10 13484491 r_1002030000   0.41082 2015-12-31 r_1002030000   0.41082  2015-12-31 2014-12-31
11 13484491 r_1002030000   0.39220 2015-09-30 r_1002030000   0.41082  2015-12-31 2014-12-31

筛选后的数据:

company_id signal_code_x signal_value_x report_date signal_code_y signal_value_y report_date_last date_1y_ago
1  2154888 r_1002030000   0.64145 2015-12-31 r_1002030000   0.64145  2015-12-31 2014-12-31
7  1702887 r_1002030000   0.51103 2015-03-31 r_1002030000   0.51103  2015-03-31 2014-03-31
10 13484491 r_1002030000   0.41082 2015-12-31 r_1002030000   0.41082  2015-12-31 2014-12-31

以上这篇使用Python的Dataframe取两列时间值相差一年的所有行方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现检测文件MD5值的方法示例

本文实例讲述了Python实现检测文件MD5值的方法。分享给大家供大家参考,具体如下: 前面介绍过Python计算文件md5值的方法,这里分析一下Python检测文件MD5值的另一种实现...

Python中字符串的常见操作技巧总结

本文实例总结了Python中字符串的常见操作技巧。分享给大家供大家参考,具体如下: 反转一个字符串 >>> S = 'abcdefghijklmnop' >&...

简单上手Python中装饰器的使用

Python的装饰器可以实现在代码运行期间修改函数的上下文, 即可以定义函数在执行之前进行何种操作和函数执行后进行何种操作, 而函数本身并没有任何的改变。 这个看起来很复杂, 实际上应用...

Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析

本文实例讲述了Python上下文管理器类和上下文管理器装饰器contextmanager用法。分享给大家供大家参考,具体如下: 一. 什么是上下文管理器 上下文管理器是在Python2....

python读取中文txt文本的方法

对于python2.7 字符串在Python2.7内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码成unicode,...