busdaycalendar(weekmask='1111100', holidays=None)
A business day calendar object that efficiently stores information defining valid days for the busday family of functions.
The default valid days are Monday through Friday ('business days'). A busdaycalendar object can be specified with any set of weekly valid days, plus an optional 'holiday' dates that always will be invalid.
Once a busdaycalendar object is created, the weekmask and holidays cannot be modified.
.. versionadded:: 1.7.0
Parameters ---------- weekmask : str or array_like of bool, optional A seven-element array indicating which of Monday through Sunday are valid days. May be specified as a length-seven list or array, like 1,1,1,1,1,0,0
; a length-seven string, like '1111100'; or a string like 'Mon Tue Wed Thu Fri', made up of 3-character abbreviations for weekdays, optionally separated by white space. Valid abbreviations are: Mon Tue Wed Thu Fri Sat Sun holidays : array_like of datetime64D
, optional An array of dates to consider as invalid dates, no matter which weekday they fall upon. Holiday dates may be specified in any order, and NaT (not-a-time) dates are ignored. This list is saved in a normalized form that is suited for fast calculations of valid days.
Returns ------- out : busdaycalendar A business day calendar object containing the specified weekmask and holidays values.
See Also -------- is_busday : Returns a boolean array indicating valid days. busday_offset : Applies an offset counted in valid days. busday_count : Counts how many valid days are in a half-open date range.
Attributes ---------- Note: once a busdaycalendar object is created, you cannot modify the weekmask or holidays. The attributes return copies of internal data. weekmask : (copy) seven-element array of bool holidays : (copy) sorted array of datetime64D
Examples -------- >>> # Some important days in July ... bdd = np.busdaycalendar( ... holidays='2011-07-01', '2011-07-04', '2011-07-17'
) >>> # Default is Monday to Friday weekdays ... bdd.weekmask array( True, True, True, True, True, False, False
) >>> # Any holidays already on the weekend are removed ... bdd.holidays array('2011-07-01', '2011-07-04'
, dtype='datetime64D
')