如何用pandas高效筛选特定日期范围内的数据集?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1441个文字,预计阅读时间需要6分钟。
Pandas是Python中强大的数据分析库,这里简单介绍其用途。日期范围筛选:使用pandas转换日期格式,筛选的列是date类型,将字符串日期转换为date格式。
pandas 是 python 中一个功能强大的库,这里就不再复述了,简单介绍下用日期范围筛选 pandas 数据。
日期转换
用来筛选的列是 date 类型,所以这里要把要筛选的日期范围从字符串转成 date 类型
比如我的数据包含列名为 trade_date,从 20050101 - 20190926 的数据,我要筛选出 20050606 - 20071016 的数据,那么,先如下转换数据类型:
s_date = datetime.datetime.strptime('20050606', '%Y%m%d').date() e_date = datetime.datetime.strptime('20071016', '%Y%m%d').date()
数据筛选
非常简单,一行代码就搞定了:
df = df[(df['tra_date'] >= s_date) & (df['tra_date'] <= e_date)]
注意事项
- 多个筛选条件并存时,不能用 and 连接,需要用单个 & 符号。
本文共计1441个文字,预计阅读时间需要6分钟。
Pandas是Python中强大的数据分析库,这里简单介绍其用途。日期范围筛选:使用pandas转换日期格式,筛选的列是date类型,将字符串日期转换为date格式。
pandas 是 python 中一个功能强大的库,这里就不再复述了,简单介绍下用日期范围筛选 pandas 数据。
日期转换
用来筛选的列是 date 类型,所以这里要把要筛选的日期范围从字符串转成 date 类型
比如我的数据包含列名为 trade_date,从 20050101 - 20190926 的数据,我要筛选出 20050606 - 20071016 的数据,那么,先如下转换数据类型:
s_date = datetime.datetime.strptime('20050606', '%Y%m%d').date() e_date = datetime.datetime.strptime('20071016', '%Y%m%d').date()
数据筛选
非常简单,一行代码就搞定了:
df = df[(df['tra_date'] >= s_date) & (df['tra_date'] <= e_date)]
注意事项
- 多个筛选条件并存时,不能用 and 连接,需要用单个 & 符号。

