ใช้เมธอด CustomBusinessHour.rollback() เพื่อย้อนวันที่กลับไปยัง offset ก่อนหน้าหากไม่อยู่บน offset
ขั้นตอน
- import pandas as pd
- สร้าง timestamp และ CustomBusinessHour offset
- เรียก
cbhOffset.rollback(pd.Timestamp('2021-12-18 08:35:10'))
ตัวอย่างโค้ด
import pandas as pd
timestamp = pd.Timestamp('2021-12-20 08:35:10')
cbhOffset = pd.tseries.offsets.CustomBusinessHour(n=5, weekmask='Mon Tue Wed Fri')
print("Timestamp...\n", timestamp)
print("\nCustomBusinessHour Offset...\n", cbhOffset)
print("\nUpdated Timestamp...\n", timestamp + cbhOffset)
roll_back = cbhOffset.rollback(pd.Timestamp('2021-12-18 08:35:10'))
print("\nRoll Backward Result...\n", roll_back)
ผลลัพธ์
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 Backward Result... 2021-12-17 17:00:00