相同的 Pandas 时间戳对象在比较相等性时返回 False

问题描述 投票:0回答:1

我有一个 pandas 数据框,其中的 time_stamp 列的最大值为“Timestamp('2019-12-30 23:50:00+0000', tz='UTC')”。我从具有完全相同值的字符串创建了另一个 ts 对象,但它们不相等。不知道为什么会发生这种情况。

enter image description here

我尝试删除 UTC 但失败。

pandas time-series timestamp
1个回答
0
投票

您好,Md Zahidul Islam,

发生此错误的原因有多种,因为时间戳有时有点棘手且不直观。即使两个时间戳在打印时看起来相同,它们也可能存在差异。

据我所知,有几件事需要检查:

  1. 首先使用
    df['time_stamp'].dtypes
    检查列的类型,以确保不是日期时间或简单对象或其他。
  2. 时间戳可能有未显示的微秒值,请使用
    Timestamp.nanosecond
    检查。
  3. 检查内部代表。查看pandas中的时间戳的类详细信息。例如,使用
    asm8
    属性进行测试,将时间戳返回到 numpy datetime64
  4. 检查您的时间戳是否具有带有
    tz
    属性的时区信息,这里是 link

这就是我所知道的一切,我让社区添加项目或讨论我的列表:)

但最后,如果我理解得很好,你想比较时间戳。 有多种方法可以做到这一点,但这里有一个 stackoverflow 上的帖子列表,应该可以帮助您:

祝你有美好的一天, 干杯

© www.soinside.com 2019 - 2024. All rights reserved.