Sử dụng phương thức to_series() để tạo Series từ TimeDeltaIndex trong Pandas. Tham số index được dùng để đặt chỉ mục (index) cho Series kết quả.
Các bước thực hiện
1. Import thư viện
import pandas as pd
2. Tạo TimeDeltaIndex
tdIndex = pd.TimedeltaIndex(data=[
'10 day 5h 2 min 3us 10ns',
'+22:39:19.999999',
'2 day 4h 03:08:02.000045',
'+21:15:45.999999'
])
4. Chuyển đổi sang Series với chỉ mục tùy chỉnh
print("\nTimeDeltaIndex thành Series với chỉ mục mới...\n",
tdIndex.to_series(index=['Date1', 'Date2', 'Date3', 'Date4']))
Ví dụ hoàn chỉnh
import pandas as pd
tdIndex = pd.TimedeltaIndex(data=[
'10 day 5h 2 min 3us 10ns',
'+22:39:19.999999',
'2 day 4h 03:08:02.000045',
'+21:15:45.999999'
])
print("TimeDeltaIndex...\n", tdIndex)
print("\nDataFrame các thành phần...\n", tdIndex.components)
print("\nTimeDeltaIndex dạng mảng đối tượng...\n", tdIndex.to_pytimedelta())
print("\nTimeDeltaIndex thành Series với chỉ mục mới...\n",
tdIndex.to_series(index=['Date1', 'Date2', 'Date3', 'Date4']))
Kết quả đầu ra
TimeDeltaIndex...
TimedeltaIndex(['10 days 05:02:00.000003010', '0 days 22:39:19.999999',
'2 days 07:08:02.000045', '0 days 21:15:45.999999'],
dtype='timedelta64[ns]', freq=None)
DataFrame các thành phần...
days hours minutes seconds milliseconds microseconds nanoseconds
0 10 5 2 0 0 3 10
1 0 22 39 19 999 999 0
2 2 7 8 2 0 45 0
3 0 21 15 45 999 999 0
TimeDeltaIndex dạng mảng đối tượng...
[datetime.timedelta(days=10, seconds=18120, microseconds=3),
datetime.timedelta(seconds=81559, microseconds=999999),
datetime.timedelta(days=2, seconds=25682, microseconds=45),
datetime.timedelta(seconds=76545, microseconds=999999)]
TimeDeltaIndex thành Series với chỉ mục mới...
Date1 10 days 05:02:00.000003010
Date2 0 days 22:39:19.999999
Date3 2 days 07:08:02.000045
Date4 0 days 21:15:45.999999
dtype: timedelta64[ns]
Lưu ý: Độ dài của danh sách index phải khớp với độ dài của TimeDeltaIndex. Series kết quả giữ dtype là timedelta64[ns].