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

Python Pandas - Cách làm tròn DateTimeIndex với tần suất hàng giờ

Để làm tròn DateTimeIndex với tần suất hàng giờ, hãy sử dụng DateTimeIndex.round () phương pháp. Đối với tần suất hàng giờ, hãy sử dụng tần suất tham số có giá trị ‘H’.

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

import pandas as pd

Tạo DatetimeIndex với chu kỳ 5 và tần suất là T tức là phút -

datetimeindex = pd.date_range('2021-09-29 07:00', periods=5, tz='Australia/Adelaide', freq='35T')

Hiển thị DateTimeIndex -

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

Hoạt động vòng trên ngày DateTimeIndex với tần suất hàng giờ. Đối với tần suất hàng giờ, chúng tôi đã sử dụng 'H' -

print("\nPerforming round operation with hourly frequency...\n",
datetimeindex.round(freq='H'))

Ví dụ

Sau đây là mã -

import pandas as pd

# DatetimeIndex with period 5 and frequency as T i.e. minutes
# timezone is Australia/Adelaide
datetimeindex = pd.date_range('2021-09-29 07:00', periods=5, tz='Australia/Adelaide', freq='35T')

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

# getting the hour
res = datetimeindex.hour
# display only the hour
print("\nThe hour from DateTimeIndex...\n", res)

# Round operation on DateTimeIndex date with hourly frequency
# For hourly frequency, we have used 'H'
print("\nPerforming round operation with hourly frequency...\n",
datetimeindex.round(freq='H'))

Đầu ra

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

DateTimeIndex...
DatetimeIndex(['2021-09-29 07:00:00+09:30', '2021-09-29 07:35:00+09:30',
'2021-09-29 08:10:00+09:30', '2021-09-29 08:45:00+09:30',
'2021-09-29 09:20:00+09:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq='35T')

The hour from DateTimeIndex...
Int64Index([7, 7, 8, 8, 9], dtype='int64')

Performing round operation with hourly frequency...
DatetimeIndex(['2021-09-29 07:00:00+09:30', '2021-09-29 08:00:00+09:30',
'2021-09-29 08:00:00+09:30', '2021-09-29 09:00:00+09:30',
'2021-09-29 09:00:00+09:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)