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

Python Pandas - Trả về vị trí chỉ mục của các giá trị giữa thời gian cụ thể trong ngày trong DateTimeIndex

Để trả về vị trí chỉ mục của các giá trị giữa thời gian cụ thể trong ngày trong DateTimeIndex, hãy sử dụng DateTimeIndex.indexer_between_time () phương pháp.

Đầ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 DatetimeIndex với chu kỳ 5 và tần suất là T tức là phút. Múi giờ là Úc / Adelaide -

datetimeindex = pd.date_range('2021-10-30 02:30:50', periods=5, tz='Australia/Adelaide', freq='20T')

Hiển thị DateTimeIndex -

print("DateTimeIndex...\n", datetimeindex)

Hiển thị vị trí chỉ mục của các giá trị giữa thời gian cụ thể trong ngày. "Start_time" được đặt là '02:30:50' và "end_time" '03:20:50 -

print("\nIndex locations of values between particular time of day...\n",
datetimeindex.indexer_between_time('02:30:50','03:20:50'))

Ví dụ

Sau đây là mã -

import pandas as pd

# DatetimeIndex with period 5 and frequency as T i.e. minutes
# The timezone is Australia/Adelaide
datetimeindex = pd.date_range('2021-10-30 02:30:50', periods=5, tz='Australia/Adelaide', freq='20T')

# display DateTimeIndex
print("DateTimeIndex...\n", datetimeindex)

# display DateTimeIndex frequency
print("\nDateTimeIndex frequency...\n", datetimeindex.freq)

# display index locations of values at particular time of day i.e. 03:10:50 here
print("\nIndex locations of values at particular time of day...\n",
datetimeindex.indexer_at_time('2021-10-30 03:10:50'))

# display index locations of values between particular time of day
# The "start_time" is set '02:30:50' and "end_time" '03:20:50'
print("\nIndex locations of values between particular time of day...\n",
datetimeindex.indexer_between_time('02:30:50','03:20:50'))

Đầu ra

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

DateTimeIndex...
DatetimeIndex(['2021-10-30 02:30:50+10:30', '2021-10-30 02:50:50+10:30',
'2021-10-30 03:10:50+10:30', '2021-10-30 03:30:50+10:30',
'2021-10-30 03:50:50+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq='20T')
DateTimeIndex frequency...
<20 * Minutes>

Index locations of values at particular time of day...
[2]

Index locations of values between particular time of day...
[0 1 2]