Python | Панды tseries.offsets.BusinessHour.next_bday

Опубликовано: 27 Марта, 2022

Смещения даты - это стандартный вид приращения даты, используемый для диапазона дат в Pandas. Он работает точно так же, как relativedelta с точки зрения аргументов ключевого слова, которые мы передаем. DateOffets работает следующим образом, каждое смещение определяет набор дат, соответствующих DateOffset. Например, Bday определяет этот набор как набор дат, являющихся рабочими днями (MF).

DateOffsets могут быть созданы для перемещения дат вперед на заданное количество допустимых дат. Например, Bday (2) можно добавить к дате, чтобы переместить ее на два рабочих дня вперед. Если дата не начинается с действительной даты, сначала она перемещается на действительную дату, а затем создается смещение.

Pandas tseries.offsets.BusinessHour.next_bday function is used for moving to next business day.

Syntax: pandas.tseries.offsets.BusinessHour.next_bday

Parameter : None

Returns : offset

Example #1: Use pandas.tseries.offsets.BusinessHour.next_bday function to move the given timestamp to next business day.

# importing pandas as pd
import pandas as pd
  
# Creating Timestamp
ts = pd.Timestamp("2019-10-10 07:15:11")
  
# Create an offset of 5 Business hours
bh = pd.tseries.offsets.BusinessHour(n = 5)
  
# Print the Timestamp
print(ts)
  
# Print the Offset
print(bh)

Выход :

Now we will add the Business hour offset to the given timestamp object to increment the datetime value. We will also move the given timestamp to the next business day.

# Adding the Business hour offset to the given timestamp
new_timestamp = ts + bh
  
# Print the updated timestamp
print(new_timestamp)
  
# Move the timestamp to next
# business day
result = ts + bh.next_bday
  
# Print the result
print(result)

Выход :

Как видно из выходных данных, мы успешно создали смещение в 5 рабочих часов и добавили его к заданной временной метке. Мы также перенесли данную метку времени на следующий рабочий день.

Example #2: Use pandas.tseries.offsets.BusinessHour() function to create an offset of 10 days and 5 Business hours.

# importing pandas as pd
import pandas as pd
  
# Creating Timestamp
ts = pd.Timestamp("2019-10-10 07:15:11")
  
# Create an offset
bh = pd.tseries.offsets.BusinessHour(offset = datetime.timedelta(days = 10, hours = 10))
  
# Print the Timestamp
print(ts)
  
# Print the Offset
print(bh)

Выход :

Now we will add the Business hour offset to the given timestamp object to increment the datetime value. We will also move the given timestamp to the next business day.

# Adding the Business hour offset to the given timestamp
new_timestamp = ts + bh
  
# Print the updated timestamp
print(new_timestamp)
  
# Move the timestamp to next
# business day
result = ts + bh.next_bday
  
# Print the result
print(result)

Выход :

Примечание. Несмотря на то, что мы передали функции 10 дней, обратите внимание на то, как меняется значение рабочего часа.

Как видно из выходных данных, мы успешно создали смещение и добавили его к заданной временной метке. Мы также перенесли данную метку времени на следующий рабочий день.

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.