Python | Панды tseries.offsets.CustomBusinessDay.onOffset

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

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

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

Pandas tseries.offsets.CustomBusinessDay.onOffset() function to check if the given timestamp is on offset or not.

Syntax: pandas.tseries.offsets.CustomBusinessDay.onOffset(dt)

Parameter :
dt : date

Returns : boolean

Example #1: Use pandas.tseries.offsets.CustomBusinessDay.onOffset() function to check if the given timestamp is on offset or not.

# importing pandas as pd
import pandas as pd
  
# Creating Timestamp
ts = pd.Timestamp("2019-4-23 11:15:00")
  
# Create an offset
cbd = pd.tseries.offsets.CustomBusinessDay(weekmask = "Mon Tue Wed")
  
# Print the Timestamp
print(ts)
  
# Print the Offset
print(cbd)

Выход :

Now we will add the offset to the given timestamp object to increment the datetime value. We will also check if the given timestamp is on offset or not.

# Adding the offset to the given timestamp
new_timestamp = ts + cbd
  
# Print the updated timestamp
print(new_timestamp)
  
# check if the given timestamp
# is on offset or not
result = cbd.onOffset(pd.Timestamp("2019-4-22 11:15:00"))
  
# print the result
print(result)

Выход :

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

Example #2: Use pandas.tseries.offsets.CustomBusinessDay.onOffset() function to check if the given timestamp is on offset or not.

# importing pandas as pd
import pandas as pd
  
# Creating Timestamp
ts = pd.Timestamp("2019-4-23 11:15:00")
  
# Create an offset
cbd = pd.tseries.offsets.CustomBusinessDay(n = 3, weekmask = "Mon Tue Wed Thu")
  
# Print the Timestamp
print(ts)
  
# Print the Offset
print(cbd)

Выход :

Now we will add the offset to the given timestamp object to increment the datetime value. We will also check if the given timestamp is on offset or not.

# Adding the offset to the given timestamp
new_timestamp = ts + cbd
  
# Print the updated timestamp
print(new_timestamp)
  
# check if the given timestamp
# is on offset or not
result = cbd.onOffset(pd.Timestamp("2019-4-19 11:15:00"))
  
# print the result
print(result)

Выход :

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

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

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