Python Pandas CustomBusinessHour - Roll provided date backward

PythonServer Side ProgrammingProgramming

To roll provided date backward, use the CustomBusinessHour.rollback() method in Pandas. At first, import the required libraries −

import pandas as pd

Set the timestamp object in Pandas −

timestamp = pd.Timestamp('2021-12-20 08:35:10')

Create the CustomBusinessHour Offset. CustomBusinessHour is the DateOffset subclass −

cbhOffset = pd.tseries.offsets.CustomBusinessHour(n = 5, weekmask = 'Mon Tue Wed Fri')

Add the offset to the Timestamp and display the Updated Timestamp −

print("
Updated Timestamp...
",timestamp + cbhOffset)

Roll backward if not on offset −

roll_back = cbhOffset.rollback(pd.Timestamp('2021-12-18 08:35:10'))

Display the result −

print("
Roll Backward Result...
",roll_back)

Example

Following is the code −

import pandas as pd

# Set the timestamp object in Pandas
timestamp = pd.Timestamp('2021-12-20 08:35:10')

# Display the Timestamp
print("Timestamp...
",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("
CustomBusinessHour Offset...
",cbhOffset) # Add the offset to the Timestamp and display the Updated Timestamp print("
Updated Timestamp...
",timestamp + cbhOffset) # roll backward if not on offset roll_back = cbhOffset.rollback(pd.Timestamp('2021-12-18 08:35:10')) # display the result print("
Roll Backward Result...
",roll_back)

Output

This will produce the following code −

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
raja
Updated on 22-Oct-2021 07:41:38

Advertisements