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

Python Pandas - Chuyển đổi thời gian thành nửa đêm trong DateTimeIndex

Để chuyển đổi thời gian thành nửa đêm trong DateTimeIndex, hãy sử dụng DateTimeIndex.normalize () trong gấu trúc.

Đầu tiên, hãy nhập các thư viện được yêu cầu -

import pandas as pd

Tạo DatetimeIndex với chu kỳ 7 và tần suất là H tức là giờ -

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

Hiển thị DateTimeIndex -

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

Thành phần thời gian của ngày-giờ được chuyển đổi thành nửa đêm, tức là 00:00:00 -

print("\nNormalize (converted the time component to midnight)...\n",
datetimeindex.normalize())

Ví dụ

Sau đây là mã -

import pandas as pd

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

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

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

# The time component of the date-time is converted to midnight i.e. 00:00:00
print("\nNormalize (converted the time component to midnight)...\n",
datetimeindex.normalize())

Đầ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 12:30:50+10:30',
'2021-10-30 22:30:50+10:30', '2021-10-31 08:30:50+10:30',
'2021-10-31 18:30:50+10:30', '2021-11-01 04:30:50+10:30',
'2021-11-01 14:30:50+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq='10H')
DateTimeIndex frequency...
<10 * Hours>

Normalize (converted the time component to midnight)...
DatetimeIndex(['2021-10-30 00:00:00+10:30', '2021-10-30 00:00:00+10:30',
'2021-10-30 00:00:00+10:30', '2021-10-31 00:00:00+10:30',
'2021-10-31 00:00:00+10:30', '2021-11-01 00:00:00+10:30',
'2021-11-01 00:00:00+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)