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


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

At first, import the required libraries −

import pandas as pd

Create a 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 minute frequency. For minute frequency, we have used 'T' −

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

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)

# getting the minute
res = datetimeindex.minute

# display only the minute
print("\nThe minute from DateTimeIndex...\n", res)

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

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>

The minute from DateTimeIndex...
Int64Index([20, 21, 21, 22, 23], dtype='int64')
Performing floor operation with minute frequency...
DatetimeIndex(['2021-10-18 07:20:00+10:30', '2021-10-18 07:21:00+10:30',
'2021-10-18 07:21:00+10:30', '2021-10-18 07:22:00+10:30',
'2021-10-18 07:23:00+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)

Updated on: 19-Oct-2021

56 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements