首页 > 解决方案 > 过滤今天日期的所有条目(熊猫)

问题描述

我想过滤掉我的数据中在一列中有今天日期的所有行。

(Fixture,Date) 列具有 pandas 日期时间类型的值。

0     2021-05-02
1     2021-06-02
2     2021-06-02
3     2021-06-02
4     2021-06-02    
189   2021-06-02
190   2021-06-02
191   2021-07-02
192   2021-07-02
193   2021-08-02

我在我的脚本中过滤了以下代码,如果我没记错的话,它在过去是有效的。

today= probs_final[probs_final["Fixture","Date"].dt.date.eq(datetime.datetime.today().date())]

但现在它返回一个空数据框。

我检查了这个答案,但这也不起作用:

today= probs_final[probs_final["Fixture","Date"].dt.date.eq(str(datetime.datetime.now().date()))]

标签: pythonpandasdataframedatetime

解决方案


您的错误是您误解了日期格式。2021-08-02 表示 2021 年 8 月 2 日,而不是 2021 年 2 月 8 日(在某些时区现在可能是今天)。

你的代码很好,你的日期不是。

编辑:

回答源问题,这似乎是您对 CSV 文件的摄取。我使用 read_csv 的 infer_datetime_format 参数取得了一些成功

pd.read_csv(..., infer_datetime_format=True)

推荐阅读