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

Python Pandas - Cách thực hiện thao tác sàn trên DateTimeIndex với tần số micro giây

Để thực hiện hoạt động sàn trên DateTimeIndex với tần suất micro giây, hãy sử dụng DateTimeIndex.floor () phương pháp. Đối với tần số micro giây, hãy sử dụng tần suất tham số có giá trị ‘chúng tôi’ .

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

import pandas as pd

DatetimeIndex với chu kỳ 7 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 của sàn vào ngày DateTimeIndex với tần suất micro giây. Đối với tần số micro giây, chúng tôi đã sử dụng 'chúng tôi' -

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

Ví dụ

Sau đây là mã -

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 microseconds frequency
# For microseconds frequency, we have used 'us'
print("\nPerforming floor operation with microseconds frequency...\n",
datetimeindex.floor(freq='us'))

Đầ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 floor operation with microseconds frequency...
DatetimeIndex(['2021-10-18 07:20:32.261811+10:30',
'2021-10-18 07:21:12.261811+10:30',
'2021-10-18 07:21:52.261811+10:30',
'2021-10-18 07:22:32.261811+10:30',
'2021-10-18 07:23:12.261811+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)