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

Gấu trúc Python - Cách làm tròn thời gianDeltaIndex với tần suất giây

Để làm tròn TimeDeltaIndex với tần suất giây, hãy sử dụng TimeDeltaIndex.round () phương pháp. Đối với tần suất giây, hãy sử dụng tần suất tham số có giá trị ‘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 TimeDeltaIndex. Chúng tôi đã đặ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 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)

Hoạt động vòng trên TimeDeltaIndex ngày với tần suất giây. Đối với tần số giây, chúng tôi đã sử dụng 'S' -

print("\nPerforming round operation with seconds frequency...\n",
tdIndex.round(freq='S'))

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

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

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

# Round operation on TimeDeltaIndex date with seconds frequency
# For seconds frequency, we have used 'S'
print("\nPerforming round operation with seconds frequency...\n",
tdIndex.round(freq='S'))

Đầu ra

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

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)

The Dataframe of the components of 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

Performing round operation with seconds frequency...
TimedeltaIndex(['10 days 05:02:00', '0 days 22:39:20', '2 days 07:08:02',
'0 days 21:15:46'],
dtype='timedelta64[ns]', freq=None)