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 连接,需要用单个 & 符号。
s_date <= df['trade_date'] <= e_date 等同于 and
pandas提取某段时间范围数据的五种方法
import pandas as pd
#读取文件
df = pd.read_csv('./tianqi.csv')
#获取九月份数据的几种方法
#方法一 使用行索引切片ÿ