+

Python | Pandas tseries.offsets.BusinessHour.rollback

DateOffsets can be created to move dates by a specified number of valid dates. For example, Bday (2) can be added to a date to move it two business days forward. If the date does not start with a valid date, it is first moved to a valid date and then an offset is generated.

tseries.offsets.BusinessHour.rollback() Pandas tseries.offsets.BusinessHour.rollback() roll tseries.offsets.BusinessHour.rollback() date back to the next offset, unless it is offset.

Syntax: pandas.tseries.offsets.BusinessHour.rollback ()

Parameter:

dt: date

Returns: rollback

Example # 1: Use pandas.tseries.offsets.BusinessHour.rollback () to scroll the supplied date back to the next offset, only if not offset.

# import pandas as pd

import pandas as pd

 
# Create a timestamp

ts = pd.Timestamp ( `2019-10-10 11: 15: 00` )

 
# Create offset

bh = pd.tseries.offsets.BusinessHour (n = 5 )

  
# Print time stamp

print (ts)

  
# Print offset

pr int (bh)

Output:

We will now add a business hour offset to this timestamp object to increase the datetime value. We`ll also roll the provided date back to the next offset, if not the offset.

# Add a business hour offset to the specified time stamp

new_timestamp = ts + bh

 
# Print updated timestamp

print (new_timestamp)

 
# rollback date if not
# by offset

result = bh.rollback ( pd.to_datetime ( `2010-02-13` ))

 
# print the result

print (result)

Output:

How we can see in the output, we have successfully created an offset and added it to the given timestamp. we have also rolled the provided date back to the next offset.

Example # 2: Use pandas.tseries.offsets.BusinessHour.rollback () to scroll the provided dates back to next offset, unless offset.

# import pandas as pd

import pandas as pd

  
# Create a timestamp

ts = pd.Timestamp ( `2019-10-10 11: 15: 00` )

 
# Create offset

bh = pd.tseries. offsets.BusinessHour (offset = datetime.timedelta (hours = 1 ))

 
# Print time stamp

print (ts)

 
# Print offset

print (bh)

Output:

Now we will add the business hour offset to the specified timestamp object to increase the datetime value ... We`ll also roll the provided date back to the next offset if not offset.

# Add a business hour offset to the specified time stamp

new_timestamp = ts + bh

 
# Print updated timestamp

print (new_timestamp)

 
# rollback date if not
# by offset

result = bh.rollback (pd .to_datetime ( `2010-02-12 11: 00: 00` ))

 
# print the result

print (result)

Output:

As we see in the output, we successfully created an offset and added it to the given timestamp. The passed date is not rolled back as it is at an offset.

Get Solution for free from DataCamp guru