Numpy, TypeError: Невозможно привести из dtype (' - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь выяснить количество рабочих дней до определенной даты и получить следующую ошибку:

import numpy as np
import pandas_market_calendars as mcal
from datetime import datetime
import pandas as pd

nyse = mcal.get_calendar('NYSE')
holidays = nyse.holidays()
holidays = list(holidays.holidays) # NYSE Holidays

today = datetime.now()
expiration = datetime(2019,2,13,0,0)

days_to_expiration = np.busday_count(today,expiration,holidays=holidays)
print(days_to_expiration)

In [6]: days_to_expiration = np.busday_count(today,expiration,holidays=holidays)
Traceback (most recent call last):

  File "<ipython-input-6-559c16b20339>", line 1, in <module>
    days_to_expiration = np.busday_count(today,expiration,holidays=holidays)

TypeError: Iterator operand 0 dtype could not be cast from dtype('<M8[us]') to dtype('<M8[D]') according to the rule 'safe'

Есть идеи, что здесь происходит?

1 Ответ

0 голосов
/ 30 января 2019

Вы должны передавать даты busday_count вместо datetime:

In [11]: today = datetime.now()
    ...: expiration = datetime(2019,2,13,0,0)
    ...:
    ...: days_to_expiration = np.busday_count(today.date(),expiration.date(),holidays=holidays)
    ...: print(days_to_expiration)
11
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...