Computer >> Máy Tính >  >> Lập trình >> Python

Python Pandas - Cách thực hiện hoạt động ngừng trên DateTimeIndex với tần suất mili giây

Để thực hiện thao tác ngừng trên DateTimeIndex với tần suất mili giây, hãy sử dụng DateTimeIndex.ceil () phương pháp. Đối với tần suất mili giây, hãy sử dụng tần suất tham số có giá trị ‘ms’.

Đầu tiên, hãy nhập các thư viện được yêu cầu -

import pandas as pd

Tạo một DatetimeIndex với chu kỳ 5 và tần suất là S tức là giây. Múi giờ là Úc / Adelaide -

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

Hoạt động dừng vào ngày DateTimeIndex với tần suất mili giây. Đối với tần số mili giây, chúng tôi đã sử dụng 'ms' -

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

Ví dụ

Sau đây là mã -

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)

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

Đầu ra

Điều này sẽ tạo ra mã sau -

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 ceil operation with milliseconds frequency...
DatetimeIndex(['2021-10-18 07:20:32.262000+10:30',
'2021-10-18 07:21:12.262000+10:30',
'2021-10-18 07:21:52.262000+10:30',
'2021-10-18 07:22:32.262000+10:30',
'2021-10-18 07:23:12.262000+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)