Я пишу скрипт, который отображает некоторые данные с датами на оси x (в matplotlib). Мне нужно создать numpy.linspace
из этих дат, чтобы впоследствии создать сплайн. Можно ли это сделать?Создание numpy linspace из datetime
Что я пробовал:
import datetime
import numpy as np
dates = [
datetime.datetime(2015, 7, 2, 0, 31, 41),
datetime.datetime(2015, 7, 2, 1, 35),
datetime.datetime(2015, 7, 2, 2, 37, 9),
datetime.datetime(2015, 7, 2, 3, 59, 16),
datetime.datetime(2015, 7, 2, 5, 2, 23)]
x = np.linspace(min(dates), max(dates), 500)
Он бросает эту ошибку:
TypeError: unsupported operand type(s) for *: 'datetime.datetime' and 'float'
Я также попытался преобразования datetime
в np.datetime64
, но это не работает, а также:
dates = [ np.datetime64(i) for i in dates ]
x = np.linspace(min(dates), max(dates), 500)
Ошибка:
TypeError: ufunc multiply cannot use operands with types dtype('<M8[us]') and dtype('float64')
Там в 'numpy' обертка' datetime', 'н.п. .datetime64' (я думаю), который может работать. – hpaulj
Уже пробовал, что в вопросе –