Существует ли (более) удобный / эффективный метод для расчета количества рабочих дней между датами с использованием панд?
Я мог бы сделать
len(pd.bdate_range(start='2018-12-03',end='2018-12-14'))-1 # minus one only if end date is a business day
но для более длинных расстояний между началом и концом дня это кажется довольно неэффективным.
Есть несколько предложений о том, как использовать объект смещения BDay
, но все они, похоже, относятся к созданию диапазонов дат или к чему-то подобному.
Я больше думаю об объекте Timedelta, который представлен в рабочих днях.
Скажем, у меня есть две серии, s1
и s2
, содержащие datetime. Если у панд было что-то вроде
s1.dt.subtract(s2,freq='B')
# giving a new series containing timedeltas where the number of days calculated
# use business days only
было бы неплохо.
(у numpy есть метод busday_count()
. Но я бы не хотел конвертировать метки времени для своих панд в numpy, поскольку это может запутаться.)