Skip to main content
`Ctrl`+`K`

# numpy.is_busday

numpy.is_busday(dates, weekmask='1111100', holidays=None, busdaycal=None, out=None)

  Calculates which of the given dates are valid days, and which are not.

  Parameters:
    dates array_like of datetime64[D]

      The array of dates to process.

    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 datetime64[D], optional

      An array of dates to consider as invalid dates. They 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.

    busdaycal busdaycalendar, optional

      A `busdaycalendar` object which specifies the valid days. If this parameter is provided, neither weekmask nor holidays may be provided.

    out array of bool, optional

      If provided, this array is filled with the result.

  Returns:
    out array of bool

      An array with the same shape as `dates`, containing True for each valid day, and False for each invalid day.

  See also

  `busdaycalendar`

    An object that specifies a custom set of 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.

  Examples

      >>> import numpy as np
      >>> # The weekdays are Friday, Saturday, and Monday
      ... np.is_busday(['2011-07-01', '2011-07-02', '2011-07-18'],
      ...                 holidays=['2011-07-01', '2011-07-04', '2011-07-17'])
      array([False, False,  True])