To round the TimeDeltaIndex with hourly frequency, use the TimeDeltaIndex.round() method. For hourly frequency, use the freq parameter with value ‘H’.
At first, import the required libraries −
import pandas as pd
Create a TimeDeltaIndex object. We have set the timedelta-like data using the 'data' parameter −
tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 3us 10ns', '+22:39:19.999999', '2 day 4h 03:08:02.000045', '+21:15:45.999999'])
Display TimedeltaIndex −
print("TimedeltaIndex...\n", tdIndex)
Round operation on TimeDeltaIndex date with hourly frequency. For hourly frequency, we have used 'H' −
print("\nPerforming round operation with hourly frequency...\n", tdIndex.round(freq='H'))
Example
Following is the code −
import pandas as pd # Create a TimeDeltaIndex object # We have set the timedelta-like data using the 'data' parameter tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 3us 10ns', '+22:39:19.999999', '2 day 4h 03:08:02.000045', '+21:15:45.999999']) # display TimedeltaIndex print("TimedeltaIndex...\n", tdIndex) # Return a dataframe of the components of TimeDeltas print("\nThe Dataframe of the components of TimeDeltas...\n", tdIndex.components) # Round operation on TimeDeltaIndex date with hourly frequency # For hourly frequency, we have used 'H' print("\nPerforming round operation with hourly frequency...\n", tdIndex.round(freq='H'))
Output
This will produce the following code −
TimedeltaIndex... TimedeltaIndex(['10 days 05:02:00.000003010', '0 days 22:39:19.999999', '2 days 07:08:02.000045', '0 days 21:15:45.999999'], dtype='timedelta64[ns]', freq=None) The Dataframe of the components of TimeDeltas... days hours minutes seconds milliseconds microseconds nanoseconds 0 10 5 2 0 0 3 10 1 0 22 39 19 999 999 0 2 2 7 8 2 0 45 0 3 0 21 15 45 999 999 0 Performing round operation with hourly frequency... TimedeltaIndex(['10 days 05:00:00', '0 days 23:00:00', '2 days 07:00:00', '0 days 21:00:00'], dtype='timedelta64[ns]', freq=None)