熊猫DateOffset,退后一天

tsc*_*chm 8 date pandas

我试着理解为什么

print(pd.Timestamp("2015-01-01") - pd.DateOffset(day=1))
Run Code Online (Sandbox Code Playgroud)

不会导致

pd.Timestamp("2014-12-31")
Run Code Online (Sandbox Code Playgroud)

我正在使用Pandas 0.18.我在CET时区内跑.

jez*_*ael 11

有错字,你需要添加sday- days.但它非常有趣,它没有提高error.

print(pd.Timestamp("2015-01-01") - pd.DateOffset(days=1))
2014-12-31 00:00:00
Run Code Online (Sandbox Code Playgroud)

另一种方案:

print(pd.Timestamp("2015-01-01") - pd.offsets.Day(1))
2014-12-31 00:00:00
Run Code Online (Sandbox Code Playgroud)


小智 8

pd.DateOffset(day=1)有效(即没有出现错误),因为“ day ”是一个有效参数,“ days ”也是如此。

看下面的:“ day ”重置实际日期,“ days ”添加到原来的日期。

pd.Timestamp( “2019-12- 25 ”)+ pd.DateOffset(= 1)

时间戳( '2019-12- 01 00:00:00')

pd.Timestamp( “2019-12- 25 ”)+ pd.DateOffset(= 1)

时间戳( '2019-12- 26 00:00:00')