To round the DateTimeIndex with milliseconds frequency, use the DateTimeIndex.round() method. For milliseconds frequency, use the freq parameter with value ‘ms’.
At first, import the required libraries −
import pandas as pd
Create a DatetimeIndex with period 5 and frequency as s i.e. seconds −
datetimeindex = pd.date_range('2021-09-29 07:20:32.261811624', periods=5, tz='Australia/Adelaide', freq='28s')
Round operation on DateTimeIndex date with milliseconds frequency. For milliseconds frequency, we have used 'ms' −
print("\nPerforming round operation with milliseconds frequency...\n", datetimeindex.round(freq='ms'))
Example
Following is the code −
import pandas as pd # DatetimeIndex with period 5 and frequency as s i.e. seconds # timezone is Australia/Adelaide datetimeindex = pd.date_range('2021-09-29 07:20:32.261811624', periods=5, tz='Australia/Adelaide', freq='28s') # display DateTimeIndex print("DateTimeIndex...\n", datetimeindex) # display DateTimeIndex frequency print("DateTimeIndex frequency...\n", datetimeindex.freq) # Round operation on DateTimeIndex date with milliseconds frequency # For milliseconds frequency, we have used 'ms' print("\nPerforming round operation with milliseconds frequency...\n", datetimeindex.round(freq='ms'))
Output
This will produce the following code −
DateTimeIndex... DatetimeIndex(['2021-09-29 07:20:32.261811624+09:30', '2021-09-29 07:21:00.261811624+09:30', '2021-09-29 07:21:28.261811624+09:30', '2021-09-29 07:21:56.261811624+09:30', '2021-09-29 07:22:24.261811624+09:30'], dtype='datetime64[ns, Australia/Adelaide]', freq='28S') DateTimeIndex frequency... <28 * Seconds> Performing round operation with milliseconds frequency... DatetimeIndex(['2021-09-29 07:20:32.262000+09:30', '2021-09-29 07:21:00.262000+09:30', '2021-09-29 07:21:28.262000+09:30', '2021-09-29 07:21:56.262000+09:30', '2021-09-29 07:22:24.262000+09:30'], dtype='datetime64[ns, Australia/Adelaide]', freq=None)