Python Pandas - How to perform ceil operation on the DateTimeIndex with seconds frequency


To perform ceil operation on the DateTimeIndex with seconds frequency, use the DateTimeIndex.ceil() method. For seconds frequency, use the freq parameter with value ‘S’.

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-10-18 07:20:32.261811624', periods=5,
tz='Australia/Adelaide', freq='40S')

Display DateTimeIndex −

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

Peform Ceil operation on DateTimeIndex date with seconds frequency. For seconds frequency, we have used 'S' −

print("\nPerforming ceil operation with seconds frequency...\n",
datetimeindex.ceil(freq='S'))

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-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 second
res = datetimeindex.second

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

# Ceil operation on DateTimeIndex date with seconds frequency
# For seconds frequency, we have used 'S'
print("\nPerforming ceil operation with seconds frequency...\n",
datetimeindex.ceil(freq='S'))

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 second from DateTimeIndex...
Int64Index([32, 12, 52, 32, 12], dtype='int64')

Performing ceil operation with seconds frequency...
DatetimeIndex(['2021-10-18 07:20:33+10:30', '2021-10-18 07:21:13+10:30',
'2021-10-18 07:21:53+10:30', '2021-10-18 07:22:33+10:30',
'2021-10-18 07:23:13+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)

Updated on: 19-Oct-2021

74 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements