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

Python Pandas - Kiểm tra xem Chênh lệch BusinessDay đã được chuẩn hóa hay chưa

Để kiểm tra xem Chênh lệch BusinessDay đã được chuẩn hóa hay chưa, hãy sử dụng thuộc tính BusinessDay.normalize trong Pandas.

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

import datetime
import pandas as pd

Đặt đối tượng dấu thời gian trong Pandas -

timestamp = pd.Timestamp('2021-10-30 01:55:02.000045')

Tạo phần bù BusinessDay. BusinessDay là lớp con DateOffset. Chúng tôi đã chuẩn hóa BusinessDay bằng cách sử dụng thông số "normalize" -

bdOffset = pd.tseries.offsets.BusinessDay(offset = datetime.timedelta(hours = 8, minutes = 10), normalize=True)

Hiển thị Dấu thời gian đã cập nhật -

print("\nUpdated Timestamp...\n",timestamp + bdOffset)

Kiểm tra xem Chênh lệch BusinessDay có được chuẩn hóa hay không -

print("\nThe BusinessDay Offset is normalized..\n", bdOffset.normalize)

Ví dụ

Sau đây là mã -

import datetime
import pandas as pd

# Set the timestamp object in Pandas
timestamp = pd.Timestamp('2021-10-30 01:55:02.000045')

# Display the Timestamp
print("Timestamp...\n",timestamp)

# Create the BusinessDay Offset
# BusinessDay is the DateOffset subclass
# We have normalized the BusinessDay using the "normalize" parameter
bdOffset = pd.tseries.offsets.BusinessDay(offset = datetime.timedelta(hours = 8, minutes = 10), normalize=True)

# Display the BusinessDay Offset
print("\nBusinessDay Offset...\n",bdOffset)

# Display the Updated Timestamp
print("\nUpdated Timestamp...\n",timestamp + bdOffset)

# return the frequency applied on the given BusinessDay object as a string
print("\nFrequency on the given BusinessDay Offset...\n",bdOffset.freqstr)

# return the name of the frequency applied on the given BusinessDay object
print("\nThe name of the frequency on the BusinessDay object..\n", bdOffset.name)

# check whether the BusinessDay Offset is normalized or not
print("\nThe BusinessDay Offset is normalized..\n", bdOffset.normalize)

Đầu ra

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

Timestamp...
 2021-10-30 01:55:02.000045

BusinessDay Offset...
 <BusinessDay: offset=datetime.timedelta(seconds=29400)>

Updated Timestamp...
 2021-11-01 00:00:00

Frequency on the given BusinessDay Offset...
 B+8H10Min

The name of the frequency on the BusinessDay object..
 B

The BusinessDay Offset is normalized..
 True