【问题标题】:Pandas dataframe dates off by one dayPandas 数据框日期提前一天
【发布时间】:2023-03-21 11:20:02
【问题描述】:

我注意到,如果我在 pandas 数据框中有 pandas 日期时间索引,那么当我使用 .value 调用它们时,日期的值会发生变化

示例。

import pandas as pd

date_try=pd.date_range(start='2017-01-01',end='2017-05-01',freq='MS')
date_df=pd.DataFrame(date_try)

print(date_df)

现在请注意当我调用时日期值是如何变化的

print(date_df.values)

【问题讨论】:

  • 你有什么版本的熊猫?我无法在 0.20 上重现此内容
  • 没关系 - 这就是 Numpy 显示日期时间的方式...
  • 我的版本是0.15.2,我只能使用这个版本。
  • @MaxU 好吧,这给我带来了麻烦,因为它给了我一个错误的日期。所以我希望有办法解决这个问题
  • 您看到的是 GMT 和您的本地时间之间的差异(冬季时区 -8,夏季时区 -7)。格林威治 2017 年 1 月 1 日午夜时分,本地仍是 2016 年 12 月 31 日下午 4 点。

标签: python python-2.7 pandas dataframe datetimeindex


【解决方案1】:

@DYZ 是对的,我一直在我的 aws 盒子上设置 cronjobs,它的运行时间与源文件所说的时间不对应,因为它是在不同的时区生成的您可以尝试在当地时间重新索引它。

import pytz
eastern = pytz.timezone('US/Eastern')
df.index = index.tz_localize(pytz.utc).tz_convert(eastern)

【讨论】:

    猜你喜欢
    • 2020-05-12
    • 2021-05-06
    • 2014-02-22
    • 1970-01-01
    • 1970-01-01
    • 2017-11-25
    • 2018-08-11
    • 2012-01-21
    • 2021-03-22
    相关资源
    最近更新 更多