在Python中按日期过滤Excel中的数据

时间:2019-06-18 14:42:34

标签: python excel pandas

我下面有一个Excel工作表

A         B                C
Name    Start Date  End Date
Ajay    6/2/2019    6/18/2019
Sham    6/3/2019    6/18/2019
Ramu    6/5/2019    6/18/2019
Ravi    6/7/2019    6/18/2019

现在我想按日期在python中过滤数据

所以我想选择开始日期和结束日期

例如:6/5/2019至6/18/2019

,结果应为:

A         B                C
Name    Start Date  End Date
Ramu    6/5/2019    6/18/2019
Ravi    6/7/2019    6/18/2019

如何在python中实现呢?

预先感谢

我已经尝试过使用此代码,但我不知道该怎么做

df[(df['date'] >= '02/01/2001') & (df['date'] <= '05/01/2001')]

1 个答案:

答案 0 :(得分:0)

首先使用pd.to_datetime将日期字段转换为datetime格式,以便可以应用过滤器。您现在正在尝试对object(string)类型的列应用计算。

我在这里使用ge代表“大于或等于”,但是您也可以使用>=<=

df['Start Date'] = pd.to_datetime(df['Start Date'])
df['End Date'] = pd.to_datetime(df['End Date'])

df[df['Start Date'].ge('2019-06-05') & df['End Date'].ge('2019-06-18')]

   Name Start Date   End Date
2  Ramu 2019-06-05 2019-06-18
3  Ravi 2019-06-07 2019-06-18