Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python Pandas - Thay đổi tần suất Period từ giây sang giờ

Để thay đổi tần suất của Period object từ giây sang giờ, sử dụng phương thức period.asfreq() với tham số 'H'.

Các bước thực hiện

1. Import thư viện

import pandas as pd

2. Tạo Period với tần suất giây

period = pd.Period(freq="S", year=2021, month=4, day=16, hour=2, minute=35, second=15)

3. Chuyển sang tần suất giờ

res = period.asfreq('H')

Ví dụ hoàn chỉnh

import pandas as pd

period = pd.Period(freq="S", year=2021, month=4, day=16, hour=2, minute=35, second=15)

print("Period (tần suất giây)...\n", period)
res = period.asfreq('H')
print("\nKết quả sau chuyển đổi tần suất (giờ)...\n", res)

Kết quả đầu ra

Period (tần suất giây)....
2021-04-16 02:35:15
Kết quả sau chuyển đổi tần suất (giờ)...
2021-04-16 02:00

Giải thích:

  • Period gốc: giây cụ thể (02:35:15)
  • asfreq('H') chuyển sang tần suất giờ → cắt bỏ phút và giây
  • Kết quả: Period đại diện cho giờ 02:00-03:00 ngày 16/4/2021

Chuyển đổi tần suất phổ biến:

period = pd.Period('2021-04-16 02:35:15', freq='S')

period.asfreq('H')  # 2021-04-16 02:00 (Period hourly)
period.asfreq('T')  # 2021-04-16 02:35 (Period minutely)
period.asfreq('D')  # 2021-04-16 (Period daily)
period.asfreq('M')  # 2021-04 (Period monthly)
period.asfreq('Y')  # 2021 (Period yearly)

Mỗi lần chuyển sang tần suất thô hơn, độ chính xác giảm dần.