为了账号安全,请及时绑定邮箱和手机立即绑定

将时间戳与日期时间进行比较

将时间戳与日期时间进行比较

慕森王 2023-08-08 16:41:01
我有一个来自数据帧和日期时间对象的时间戳,我想比较它们以在数据帧中进行选择。我的数据如下:print(type(datetime.datetime.now()))<class 'datetime.datetime'>print(type((df.created_at[0])))<class 'pandas._libs.tslibs.timestamps.Timestamp'>如何使用日期时间对象选择该数据框中的特定行?如下:df[df.created > datetime.datetime.now()]但它返回给我以下错误消息:TypeError: Cannot compare tz-naive and tz-aware datetime-like objects,知道如何解决这个问题吗?谢谢!
查看完整描述

2 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

时间戳是一个时区感知对象,而您从中获取的日期时间对象datetime.datetime.now()是时区天真的对象,因为您没有另外指定,因此会出现错误。您应该进行转换,以便它们要么都支持时区,要么都不支持时区。

例如,您可以datetime.datetime.now()像这样调用以使其具有时区意识(从时间戳对象传递时区信息作为参数):

datetime.datetime.now(df.created_at[0].tzinfo)


查看完整回答
反对 回复 2023-08-08
?
慕村225694

TA贡献1880条经验 获得超4个赞

df[df.created.to_pydatetime() > datetime.datetime.now()]
查看完整回答
反对 回复 2023-08-08
  • 2 回答
  • 0 关注
  • 113 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信