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