将 datetime64[ns] 索引转换为日期 pandas 以进行比较

Posted

技术标签:

【中文标题】将 datetime64[ns] 索引转换为日期 pandas 以进行比较【英文标题】:Convert datetime64[ns] Index to date pandas for comparison 【发布时间】:2021-02-23 20:36:34 【问题描述】:

我有以下 python 代码:

current_ts = datetime.datetime.now()
current_date = current_ts.date()

new_df = df[df.index >= current_date]

df.index 是 datetime64[ns],当我运行代码时,我得到 Invalid comparison between dtype=datetime64[ns] and date

如何将索引转换为日期以便进行比较?

【问题讨论】:

【参考方案1】:

Pandas datetime64[ns] 不能直接与 datetime.date 进行比较。你需要转换:

df[df.index >= pd.Timestamp(current_date)]

【讨论】:

以上是关于将 datetime64[ns] 索引转换为日期 pandas 以进行比较的主要内容,如果未能解决你的问题,请参考以下文章

pd.datetime 没有正确索引

将 datetime64[ns, UTC] pandas 列转换为 datetime

创建新列时日期转换不起作用

Pandas DataFrame - '不能在使用 ols/线性回归时将日期时间从 [datetime64[ns]] 输入到 [float64]'

Python/Pandas:如何从 datetime64[ns] 转换为 datetime

Pandas 过滤并转换为 Date 到 datetime64ns