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

Python Pandas - Chuyển đổi đối tượng PeriodIndex thành Dấu thời gian và đặt tần suất

Để chuyển đổi đối tượng PeriodIndex thành Dấu thời gian, hãy sử dụng PeriodIndex.to_timestamp () phương pháp. Đặt tần suất bằng cách sử dụng freq tham số.

Đầ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 đối tượng PeriodIndex. PeriodIndex là một ndarray bất biến giữ các giá trị thứ tự cho biết các khoảng thời gian đều đặn trong thời gian. Chúng tôi đã đặt tần suất bằng tham số "freq" -

periodIndex = pd.PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45',
'2020-07-15 02:55:15', '2022-06-25 09:40:55'], freq="Y")

Đối tượng Thời gian hiển thị -

print("PeriodIndex...\n", periodIndex)

Chuyển đổi PeriodIndex thành dấu thời gian. Chúng tôi đã đặt tần suất bằng tham số "freq" -

print("\nPeriodIndex object to timestamp...\n", periodIndex.to_timestamp(freq='M'))

Ví dụ

Sau đây là mã -

import pandas as pd

# Create a PeriodIndex object
# PeriodIndex is an immutable ndarray holding ordinal values indicating regular periods in time
# We have set the frequency using the "freq" parameter
periodIndex = pd.PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45',
'2020-07-15 02:55:15', '2022-06-25 09:40:55'], freq="Y")

# Display PeriodIndex object
print("PeriodIndex...\n", periodIndex)

# Display PeriodIndex frequency
print("\nPeriodIndex frequency object...\n", periodIndex.freq)

# Display PeriodIndex frequency as string
print("\nPeriodIndex frequency object as a string...\n", periodIndex.freqstr)

# Convert PeriodIndex to timestamp
# We have set the frequency using the "freq" parameter
print("\nPeriodIndex object to timestamp...\n", periodIndex.to_timestamp(freq='M'))

Đầu ra

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

PeriodIndex...
PeriodIndex(['2021', '2019', '2020', '2022'], dtype='period[A-DEC]')

PeriodIndex frequency object...
<YearEnd: month=12>

PeriodIndex frequency object as a string...
A-DEC

PeriodIndex object to timestamp...
DatetimeIndex(['2021-01-31', '2019-01-31', '2020-01-31', '2022-01-31'], dtype='datetime64[ns]', freq=None)