Spec-Zone.ru › pandas 2

pandas.tseries.offsets.BusinessHour

classpandas.tseries.offsets.BusinessHour

Подкласс DateOffset, представляющий, возможно, n рабочих часов.

Параметры:
n:int, по умолчанию 1

Количество часов.

normalize:bool, по умолчанию False

Нормализовать начальную/конечную даты до полуночи перед генерацией диапазона дат.

start:str, time или список str/time, по умолчанию “09:00”

Начальное время ваших пользовательских рабочих часов в 24-часовом формате.

end:str, time или список str/time, по умолчанию: “17:00”

Конечное время ваших пользовательских рабочих часов в 24-часовом формате.

offset:timedelta, по умолчанию timedelta(0)

Применяемое временное смещение.

Примеры

Вы можете использовать параметр n для представления сдвига на n часов.

>>> ts = pd.Timestamp(2022, 12, 9, 8)
>>> ts + pd.offsets.BusinessHour(n=5)
Timestamp('2022-12-09 14:00:00')

Вы также можете изменить начало и конец рабочих часов.

>>> ts = pd.Timestamp(2022, 8, 5, 16)
>>> ts + pd.offsets.BusinessHour(start="11:00")
Timestamp('2022-08-08 11:00:00')
>>> from datetime import time as dt_time
>>> ts = pd.Timestamp(2022, 8, 5, 22)
>>> ts + pd.offsets.BusinessHour(end=dt_time(19, 0))
Timestamp('2022-08-08 10:00:00')

Передавая параметр normalize равным True, вы сдвигаете начало следующего рабочего часа до полуночи.

>>> ts = pd.Timestamp(2022, 12, 9, 8)
>>> ts + pd.offsets.BusinessHour(normalize=True)
Timestamp('2022-12-09 00:00:00')

Вы можете разделить ваши рабочие часы на несколько частей.

>>> import datetime as dt
>>> freq = pd.offsets.BusinessHour(start=["06:00", "10:00", "15:00"],
...                                end=["08:00", "12:00", "17:00"])
>>> pd.date_range(dt.datetime(2022, 12, 9), dt.datetime(2022, 12, 13), freq=freq)
DatetimeIndex(['2022-12-09 06:00:00', '2022-12-09 07:00:00',
               '2022-12-09 10:00:00', '2022-12-09 11:00:00',
               '2022-12-09 15:00:00', '2022-12-09 16:00:00',
               '2022-12-12 06:00:00', '2022-12-12 07:00:00',
               '2022-12-12 10:00:00', '2022-12-12 11:00:00',
               '2022-12-12 15:00:00', '2022-12-12 16:00:00'],
               dtype='datetime64[ns]', freq='bh')

Атрибуты

base

Возвращает копию вызываемого объекта смещения с n=1 и всеми другими атрибутами равными.

calendar

end

freqstr

Возвращает строку, представляющую частоту.

holidays

kwds

Возвращает словарь дополнительных параметров для смещения.

n

name

Возвращает строку, представляющую основную частоту.

nanos

next_bday

Используется для перехода к следующему рабочему дню.

normalize

offset

Псевдоним для self._offset.

rule_code

start

weekmask

Методы

copy()

Возвращает копию частоты.

is_anchored()

(УСТАРЕЛО) Возвращает логическое значение, является ли частота единичной частотой (n=1).

is_month_end(ts)

Возвращает логическое значение, происходит ли отметка времени в конце месяца.

is_month_start(ts)

Возвращает логическое значение, происходит ли отметка времени в начале месяца.

is_on_offset(dt)

Возвращает логическое значение, пересекается ли отметка времени с этой частотой.

is_quarter_end(ts)

Возвращает логическое значение, происходит ли отметка времени в конце квартала.

is_quarter_start(ts)

Возвращает логическое значение, происходит ли отметка времени в начале квартала.

is_year_end(ts)

Возвращает логическое значение, происходит ли отметка времени в конце года.

is_year_start(ts)

Возвращает логическое значение, происходит ли отметка времени в начале года.

rollback(other)

Откатывает указанную дату назад до следующего смещения только если не на смещении.

rollforward(other)

Откатывает указанную дату вперед до следующего смещения только если не на смещении.

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.tseries.offsets.BusinessHour.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API