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

Python Pandas - Trích xuất số giây cho mỗi phần tử từ TimeDeltaIndex

Để trích xuất Số giây cho mỗi phần tử từ đối tượng TimeDeltaIndex, hãy sử dụng TimedeltaIndex.seconds tài sản

Đầ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 TimeDeltaIndex. Chúng tôi cũng đã đặt dữ liệu giống thời gian bằng cách sử dụng tham số 'data' -

tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 35s 3us 10ns', '+22:39:19.999999',
'2 day 4h 03:08:02.000045', '+21:15:45.999999'])

Hiển thị TimedeltaIndex -

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

Hiển thị số giây từ mỗi phần tử của TimeDeltaIndex -

print("\nThe number of seconds from the TimeDeltaIndex object...\n", tdIndex.seconds)

Ví dụ

Sau đây là mã -

import pandas as pd

# Create a TimeDeltaIndex object
# We have set the timedelta-like data using the 'data' parameter as well
tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 35s 3us 10ns', '+22:39:19.999999',
'2 day 4h 03:08:02.000045', '+21:15:45.999999'])

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

# display the number of seconds from each element of TimeDeltaIndex
print("\nThe number of seconds from the TimeDeltaIndex object...\n", tdIndex.seconds)

# Return a dataframe of the components of TimeDeltas
print("\nThe Dataframe of the components of TimeDeltas...\n", tdIndex.components)

Đầu ra

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

TimedeltaIndex...
TimedeltaIndex(['10 days 05:02:35.000003010', '0 days 22:39:19.999999',
'2 days 07:08:02.000045', '0 days 21:15:45.999999'],
dtype='timedelta64[ns]', freq=None)

The number of seconds from the TimeDeltaIndex object...
Int64Index([18155, 81559, 25682, 76545], dtype='int64')

The Dataframe of the components of TimeDeltas...
   days    hours minutes seconds milliseconds microseconds nanoseconds
0    10    5       2      35        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