Python Pandas CustomBusinessHour - 僅當不在偏移量上時,將提供日期向前滾動到下一個偏移量
若要僅在未使用偏移量時將提供日期向前滾動到下一個偏移量,請使用 Pand 中的 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 # Set the timestamp object in Pandas timestamp = pd.Timestamp('2021-12-20 08:35:10') # Display the Timestamp print("Timestamp...\n",timestamp) # Create the CustomBusinessHour Offset # CustomBusinessHour is the DateOffset subclass # Weekmask of valid business days cbhOffset = pd.tseries.offsets.CustomBusinessHour(n = 5, weekmask = 'Mon Tue Wed Fri') # Display the CustomBusinessHour Offset print("\nCustomBusinessHour Offset...\n",cbhOffset) # Add the offset to the Timestamp and display the Updated Timestamp print("\nUpdated Timestamp...\n",timestamp + cbhOffset) # roll forward if not on offset roll = cbhOffset.rollforward(pd.Timestamp('2021-12-30 08:35:10')) # display the result 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
廣告