pandas.tseries.offsets.BusinessHour#
- класс pandas.tseries.offsets.BusinessHour#
подкласс DateOffset, представляющий, возможно, n рабочих часов.
- Параметры:
- nint, по умолчанию 1
Количество представленных часов.
- нормализоватьbool, по умолчанию False
Нормализовать начальные/конечные даты до полуночи перед генерацией диапазона дат.
- началострока, время или список строк/времени, по умолчанию "09:00"
Время начала вашего пользовательского рабочего часа в 24-часовом формате.
- endstr, time или список str/time, по умолчанию: “17:00”
Время окончания вашего пользовательского рабочего часа в 24-часовом формате.
- смещение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 и всеми остальными атрибутами равными.
Возвращает строку, представляющую частоту.
Возвращает словарь дополнительных параметров для смещения.
Возвращает строку, представляющую базовую частоту.
next_bdayИспользуется для перехода к следующему рабочему дню.
offsetПсевдоним для self._offset.
Методы
copy()Возвращает копию частоты.
(УСТАРЕЛО) Возвращает логическое значение, является ли частота единичной (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)Переместить указанную дату вперед к следующему смещению только если она не на смещении.