GH 21020#

класс pandas.tseries.offsets.CustomBusinessMonthEnd#

Подкласс DateOffset, представляющий пользовательские рабочие месяцы.

Интервалы между датами конца месяца.

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

Количество представленных месяцев.

нормализоватьbool, по умолчанию False

Нормализация конечных дат до полуночи перед генерацией диапазона дат.

weekmaskstr, по умолчанию ‘Mon Tue Wed Thu Fri’

Маска рабочих дней недели, передаваемая в numpy.busdaycalendar.

праздникиlist

Список/массив дат для исключения из набора рабочих дней, передается в numpy.busdaycalendar.

календарьnp.busdaycalendar

Календарь для интеграции.

смещениеtimedelta, по умолчанию timedelta(0)

Смещение времени для применения.

Смотрите также

DateOffset

Стандартный тип приращения даты.

Примеры

В примере ниже мы используем параметры по умолчанию.

>>> ts = pd.Timestamp(2022, 8, 5)
>>> ts + pd.offsets.CustomBusinessMonthEnd()
Timestamp('2022-08-31 00:00:00')

Пользовательский конец рабочего месяца может быть указан с помощью weekmask параметр. Чтобы преобразовать возвращаемый объект datetime в его строковое представление, в следующем примере используется функция strftime().

>>> import datetime as dt
>>> freq = pd.offsets.CustomBusinessMonthEnd(weekmask="Wed Thu")
>>> pd.date_range(dt.datetime(2022, 7, 10), dt.datetime(2022, 12, 18),
...               freq=freq).strftime('%a %d %b %Y %H:%M')
Index(['Thu 28 Jul 2022 00:00', 'Wed 31 Aug 2022 00:00',
       'Thu 29 Sep 2022 00:00', 'Thu 27 Oct 2022 00:00',
       'Wed 30 Nov 2022 00:00'],
       dtype='object')

Используя календарь рабочих дней NumPy, вы можете определить пользовательские праздники.

>>> import datetime as dt
>>> bdc = np.busdaycalendar(holidays=['2022-08-01', '2022-09-30',
...                                   '2022-10-31', '2022-11-01'])
>>> freq = pd.offsets.CustomBusinessMonthEnd(calendar=bdc)
>>> pd.date_range(dt.datetime(2022, 7, 10), dt.datetime(2022, 11, 10), freq=freq)
DatetimeIndex(['2022-07-29', '2022-08-31', '2022-09-29', '2022-10-28'],
               dtype='datetime64[ns]', freq='CBME')

Атрибуты

base

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

calendar

cbday_roll

Определить функцию roll по умолчанию для вызова в методе apply.

freqstr

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

holidays

kwds

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

m_offset

month_roll

Определить функцию roll по умолчанию для вызова в методе apply.

n

name

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

nanos

normalize

offset

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

rule_code

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(dt)

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

rollforward(dt)

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