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

Python Pandas - Trích xuất số ngày từ TimeDeltaIndex

Để trích xuất số ngày từ mỗi phần tử của TimeDeltaIndex, hãy sử dụng thuộc tính TimedeltaIndex.days.

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'
])

3. Hiển thị TimedeltaIndex

print("TimedeltaIndex...\n", tdIndex)

4. Trích xuất số ngày

print("\nSố ngày từ mỗi phần tử...\n", tdIndex.days)

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("\nSố ngày từ mỗi phần tử...\n", tdIndex.days)
print("\nDataFrame các thành phần của TimeDeltas...\n", tdIndex.components)

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)

Số ngày từ TimeDeltaIndex...
Int64Index([10, 0, 2, 0], dtype='int64')

DataFrame các thành phần của TimeDeltas...
    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

Lưu ý: Thuộc tính days trả về số ngày nguyên (phần nguyên của timedelta). Để lấy tổng số ngày (bao gồm phần lẻ), dùng tdIndex.total_seconds() / 86400.