首页 > 解决方案 > 如何将日期与熊猫中的字符串进行比较?

问题描述

我有df['date'] = pd.to_datetime(df['Transaction_Date'], format = '%d/%m/%Y')这似乎工作正常。但是,我真的很烦人,当我比较日期时,我似乎仍然必须使用月/日/年格式。如在

df[(df['date'] > "04/10/2018") & (df['date'] < "05/10/2018")]

有没有办法说服熊猫在比较日期时允许使用日/月/年格式?

标签: pythonpandasdatedatetime

解决方案


你不能,除非你事先转换为日期时间。

from functools import partial

f = partial(pd.to_datetime, dayfirst=True)
df[(df['date'] > f("04/10/2018")) & (df['date'] < f("05/10/2018"))]

或者,

df['date'].between(f("04/10/2018"), f("05/10/2018"))

否则,如果要比较字符串,格式必须为 YYYY-MM-DD。


推荐阅读