Я попытался вычислить количество рабочих дней между двумя датами (хранится в отдельных столбцах в кадре данных).
MonthBegin MonthEnd
0 2014-06-09 2014-06-30
1 2014-07-01 2014-07-31
2 2014-08-01 2014-08-31
3 2014-09-01 2014-09-30
4 2014-10-01 2014-10-31
Я попытался применить numpy.busday_count
, но получаю следующую ошибку:
Iterator operand 0 dtype could not be cast from dtype('<M8[ns]') to dtype('<M8[D]') according to the rule 'safe'
Я пытался изменить тип на метку времени следующим образом:
Timestamp('2014-08-31 00:00:00')
или datetime:
datetime.date(2014, 8, 31)
или numpy.datetime64:
numpy.datetime64('2014-06-30T00:00:00.000000000')
Кто-нибудь знает, как это исправить?
Примечание 1. Я прошел попытку np.busday_count
двумя способами: 1. Передача столбцов данных, t['Days']=np.busday_count(t.MonthBegin,t.MonthEnd)
Передача массивов
np.busday_count(dt1,dt2)
Примечание 2: Мой фрейм данных содержит более 150 тыс. Строк, поэтому мне нужно использовать эффективный алгоритм