来自 python 的相对增量的意外行为



当使用Python的时间戳和时,我得到了一个令人困惑的结果

my_timestamp

Timestamp('2015-06-01 00:00:00')

my_timestamp+relativelta(月=+4)

Timestamp('2015-04-01 00:00:00')

我自然期望输出到Timestamp('2015-10-01 00:00:00')

在日期中添加"月"的正确方法是什么?


[编辑]:我已经通过使用以下方法解决了这个问题(以防Pandas中的任何人都有同样的问题):

打印my_timestamp
打印my_timestamp+DateOffset(月份=4)

2015-06-01 00:00:00
2015-10-01 00:00:00

问题是您使用了错误的关键字参数。您需要months而不是month

根据文档,month表示绝对信息(而不是相对信息),并简单地替换给定的信息,正如您所注意到的。使用months表示相对信息,并按预期执行计算:

Timestamp('2015-06-01 00:00:00') + relativedelta(months=4)
2015-10-01 00:00:00

相关内容

  • 没有找到相关文章

最新更新