प्रदान की गई तिथि को केवल ऑफ़सेट पर न होने पर अगले ऑफ़सेट पर रोल करने के लिए, पंडों में CustomBusinessHour.rollforward() विधि का उपयोग करें।
सबसे पहले, आवश्यक पुस्तकालयों को आयात करें -
import pandas as pd
पंडों में टाइमस्टैम्प ऑब्जेक्ट सेट करें -
timestamp = pd.Timestamp('2021-12-20 08:35:10')
CustomBusinessHour ऑफ़सेट बनाएँ। CustomBusinessHour डेटऑफ़सेट उपवर्ग है। वैध व्यावसायिक दिनों का वीकमास्क -
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