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

Gấu trúc Python - Cách xoay vòng thời gianDeltaIndex với tần suất hàng giờ

Để làm tròn TimeDeltaIndex với tần suất hàng giờ, hãy sử dụng TimeDeltaIndex.round () phương pháp. Đối với tần suất hàng giờ, hãy sử dụng tần suất tham số có giá trị ‘H’ .

Đầ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 vào ngày TimeDeltaIndex với tần suất hàng giờ. Đối với tần suất hàng giờ, chúng tôi đã sử dụng 'H' -

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

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 hourly frequency
# For hourly frequency, we have used 'H'
print("\nPerforming round operation with hourly frequency...\n",
tdIndex.round(freq='H'))

Đầ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 hourly frequency...
TimedeltaIndex(['10 days 05:00:00', '0 days 23:00:00', '2 days 07:00:00',
'0 days 21:00:00'],
dtype='timedelta64[ns]', freq=None)