【问题标题】:Change date to day + 1 in a pandas dataframe where time = 00:00:00在时间 = 00:00:00 的 pandas 数据框中将日期更改为 day + 1
【发布时间】:2016-12-22 10:30:51
【问题描述】:

如果您在我的数据框图像中看到,我的时间点是午夜比应有的时间晚一天,这会影响我的时间序列图。

我尝试使用 df.replace() 传入列表 a 和 b:

df.replace(to_replace=a,value=b,inplace=True)

这只是将 a 中的所有值替换为 b 中的相同值,而不是列表中的所有值。

我也尝试传入字典,但收到: 值错误:“不允许使用重叠的键和值进行替换”

对于时间为 00:00:00 的情况,有什么方法可以将 date 列或 date_time 列中的日期更改为 day+1 ? 也许使用 strftime 格式的 pandas map() 方法?

【问题讨论】:

    标签: python datetime pandas


    【解决方案1】:

    也许你可以在这种情况下做点什么

    df.loc[df['time'] == datetime.time(0, 0), 'date'] += datetime.timedelta(days+1)
    

    它选择时间为00:00 的行。仅在该行上,您将日期列增加一天。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-15
      • 1970-01-01
      • 1970-01-01
      • 2014-02-19
      • 1970-01-01
      • 2013-07-12
      • 1970-01-01
      • 2019-10-07
      相关资源
      最近更新 更多