pandas.tseries.offsets.CustomBusinessMonthEnd #

pandas.tseries.offsets类 自定义业务月末#

代表自定义业务月份的 DateOffset 子类。

月末日期之间的增量。

参数
n整数,默认1

代表的月份数。

标准化布尔值,默认 False

在生成日期范围之前将结束日期标准化为午夜。

weekmask str,默认“周一周二周三周四周五”

有效工作日的周掩码,传递至numpy.busdaycalendar

假期清单

要从有效工作日集中排除的日期列表/数组,传递给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参数指定。要将返回的日期时间对象转换为其字符串表示形式,下一个示例中将使用函数 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

定义要在 apply 方法中调用的默认滚动函数。

freqstr

返回表示频率的字符串。

holidays

kwds

返回偏移量的额外参数的字典。

m_offset

month_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)

仅当不在偏移时,将提供的日期向前滚动到下一个偏移。