Преобразование панд DatetimeIndex в формат дней с плавающей запятой с помощью Matplotlib.dates.datestr2num
Некоторым методам Matplotlib нужны дни«формат дней плавания», datestr2num - это функция конвертера для этого, но она падает с соответствующими объектами pandas:
In [3]: type(df.index)
Out[3]: pandas.tseries.index.DatetimeIndex
In [4]: type(df.index[0])
Out[4]: pandas.tslib.Timestamp
In [5]: mpl.dates.date2num(df.index)
Out [5]: ...
AttributeError: 'numpy.datetime64' object has no attribute 'toordinal'
Это позволяет использовать список времени в формате «float days»:
dates = [mpl.dates.date2num(t) for t in df.index]
Но есть ли лучший способ?