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

Python Pandas - Chuyển DateTimeIndex sang Series giữ múi giờ

Để chuyển DateTimeIndex sang Series (giữ nguyên múi giờ), sử dụng phương thức DateTimeIndex.to_series().

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

1. Import thư viện

import pandas as pd

2. Tạo DateTimeIndex có múi giờ

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

3. Chuyển sang Series

print("\nDateTimeIndex to Series...\n",
      datetimeindex.to_series())

Ví dụ hoàn chỉnh

import pandas as pd

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

print("DateTimeIndex...\n", datetimeindex)
print("DateTimeIndex frequency...\n", datetimeindex.freq)
print("\nDateTimeIndex to Series...\n",
      datetimeindex.to_series())

Kết quả đầu ra

DateTimeIndex...
DatetimeIndex(['2021-10-18 07:20:32.261811624+10:30', ...],
              dtype='datetime64[ns, Australia/Adelaide]', freq='40S')

DateTimeIndex to Series...
2021-10-18 07:20:32.261811624+10:30    2021-10-18 07:20:32.261811624+10:30
2021-10-18 07:21:12.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:21:52.261811624+10:30
2021-10-18 07:22:32.261811624+10:30    2021-10-18 07:22:32.261811624+10:30
2021-10-18 07:23:12.261811624+10:30    2021-10-18 07:23:12.261811624+10:30
Freq: 40S, dtype: datetime64[ns, Australia/Adelaide]

Đặc điểm của Series kết quả

  • Index: Các giá trị datetime (giống index gốc)
  • Values: Cũng là các giá trị datetime (trùng lặp index)
  • Dtype: datetime64[ns, Australia/Adelaide] (giữ timezone)
  • Freq: 40S (giữ tần suất)

Khi nào dùng to_series()?

  • Cần Series để plot, resample, hoặc các operation yêu cầu Series
  • Muốn giữ index datetime để join/align với Series/DataFrame khác
  • Cần truy xuất giá trị bằng nhãn thời gian: series['2021-10-18 07:20']