xref #8293
The code has evolved quite a bit and could probably benefit from refactoring.
In particular warpping the busdaycalendar logic in a wrapper class could make the code easier.
Notes about the current implementation:
- CustomBusinessDay
uses np.busdaycalendar
to do the computations.
- To speed up creation of new CustomBusinessDay
offsets the calendar is cached in kwds
.
- To check equality of two CustomBusinessDay
instances, the attributes holidays
and weekdays
are used.
- remove EXPERIMENTAL (in docs, but check off in the experimental issue #5049)
- might be some docs that say requires numpy >= 1.7 (but now all of pandas on that, so can cleanup)
Comment From: bjonen
From the previous discussion Quoting @jreback
hmm sounds like we really should have is a wrapper object
around np.busycalensar that is more friendly
(and does these types of validations) and can cache itself too -
this is pretty straightforward btw
just a
class Calendar(object):
holds the actual np.busycalendar
and weekmask/holidays
Comment From: jreback
@bjonen if you want to do a PR for the last point up their (any numpy 1.7 references in docs ok by me)
Comment From: TomAugspurger
There's been a decent amount of work on offsets recently. It's not immediately clear which of the original items are still issues. If we have specific snippets / tests for any remaining items we can reopen / open new issues.