Python Pandas - How to perform floor operation on the DateTimeIndex with milliseconds frequency


To perform floor operation on the DateTimeIndex with milliseconds frequency, use the DateTimeIndex.floor() method. For milliseconds frequency, use the freq parameter with value ‘ms’.

At first, import the required libraries −

import pandas as pd

DatetimeIndex with period 7 and frequency as S i.e. seconds −

datetimeindex = pd.date_range('2021-10-18 07:20:32.261811624', periods=5,
tz='Australia/Adelaide', freq='40S')

Display DateTimeIndex −

print("DateTimeIndex...\n", datetimeindex)

Floor operation on DateTimeIndex date with milliseconds frequency. For milliseconds frequency, we have used 'ms' −

print("\nPerforming floor operation with milliseconds frequency...\n",
datetimeindex.floor(freq='ms'))

Example

Following is the code −

import pandas as pd

# DatetimeIndex with period 7 and frequency as S i.e. seconds
# timezone is Australia/Adelaide
datetimeindex = pd.date_range('2021-10-18 07:20:32.261811624', periods=5,
tz='Australia/Adelaide', freq='40S')

# display DateTimeIndex
print("DateTimeIndex...\n", datetimeindex)

# display DateTimeIndex frequency
print("DateTimeIndex frequency...\n", datetimeindex.freq)

# Floor operation on DateTimeIndex date with milliseconds frequency
# For milliseconds frequency, we have used 'ms'
print("\nPerforming floor operation with milliseconds frequency...\n",
datetimeindex.floor(freq='ms'))

Output

This will produce the following code −

DateTimeIndex...
DatetimeIndex(['2021-10-18 07:20:32.261811624+10:30',
'2021-10-18 07:21:12.261811624+10:30',
'2021-10-18 07:21:52.261811624+10:30',
'2021-10-18 07:22:32.261811624+10:30',
'2021-10-18 07:23:12.261811624+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq='40S')
DateTimeIndex frequency...
<40 * Seconds>

Performing floor operation with milliseconds frequency...
DatetimeIndex(['2021-10-18 07:20:32.261000+10:30',
'2021-10-18 07:21:12.261000+10:30',
'2021-10-18 07:21:52.261000+10:30',
'2021-10-18 07:22:32.261000+10:30',
'2021-10-18 07:23:12.261000+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)

Updated on: 19-Oct-2021

238 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements