要将提供的日期前滚到下一个偏移量(如果不在偏移量上),请使用Pandas中的方法。CustomBusinessHour.rollforward()
首先,导入所需的库-
import pandas as pd在Pandas中设置时间戳对象-
timestamp = pd.Timestamp(2021-12-20 08:35:10)创建CustomBusinessHour偏移量。CustomBusinessHour是DateOffset子类。有效工作日的周掩码-
cbhOffset = pd.tseries.offsets.CustomBusinessHour(n = 5, weekmask = Mon Tue Wed Fri)将偏移量添加到时间戳并显示更新的时间戳-
print("\nUpdated Timestamp...\n",timestamp + cbhOffset)如果不在偏移上,则向前滚动-
roll = cbhOffset.rollforward(pd.Timestamp(2021-12-30 08:35:10))显示结果-
print("\nRoll forward Result...\n",roll)以下是代码-
import pandas as pd #SetthetimestampobjectinPandas timestamp = pd.Timestamp(2021-12-20 08:35:10) #DisplaytheTimestamp print("Timestamp...\n",timestamp) #CreatetheCustomBusinessHourOffset #CustomBusinessHouristheDateOffsetsubclass #Weekmaskofvalidbusinessdays cbhOffset = pd.tseries.offsets.CustomBusinessHour(n = 5, weekmask = Mon Tue Wed Fri) #DisplaytheCustomBusinessHourOffset print("\nCustomBusinessHour Offset...\n",cbhOffset) #AddtheoffsettotheTimestampanddisplaytheUpdatedTimestamp print("\nUpdated Timestamp...\n",timestamp + cbhOffset) #rollforwardifnotonoffset roll = cbhOffset.rollforward(pd.Timestamp(2021-12-30 08:35:10)) #displaytheresult print("\nRoll forward Result...\n",roll)输出结果这将产生以下代码-
Timestamp... 2021-12-20 08:35:10 CustomBusinessHour Offset... <5 * CustomBusinessHours: CBH=09:00-17:00> Updated Timestamp... 2021-12-20 14:00:00 Roll forward Result... 2021-12-31 09:00:00