заговор с типом даты и времени в питоне - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь нанести график распределения «времени». Вот мой фрейм данных:

date    amount
40  2018-12-31  104.588094
184     2019-01-01  2487.714459
80  2019-01-02  250.405264
10  2019-01-03  217.385350
170     2019-01-04  208.067521
110     2019-01-05  176.668830
73  2019-01-06  311.626595
145     2019-01-07  283.241003
139     2019-01-08  284.652009

Столбец даты является типом даты. Вот мой код:

#visualizations of time 
plt.figure(figsize=(10,8))
plt.title('Distribution of Time Feature')
sns.distplot(montant_df_pandas['dateTransmission'])

Но я получаю эту ошибку:

--------------------------------------------------------------------------- TypeError Traceback (последний вызов был последним) в 2 plt.figure (figsize = (10,8)) 3 plt.title ('Распределение функции времени') ----> 4 sns.distplot (montant_df_pandas ['dateTransmission'])

~ / anaconda3 / envs / naboo-env / lib / python3.6 / site-packages / seaborn / distribtions.py в дистрибутиве (a, bin ,stist, kde, rug, fit, history_kws, kde_kws, rug_kws, fit_kws, цвет, вертикальный, norm_hist, axlabel, label, ax) 196 строка, = ax.plot (0, a.mean ()) 197 остальное: -> 198 строка, = ax.plot(a.mean (), 0) 199 color = line.get_color () 200 line.remove ()

~ / anaconda3 / envs / naboo-env / lib / python3.6 / site-packages / numpy/core/_methods.py в _mean (a, ось, dtype, out, keepdims) 73 is_float16_result = True 74 ---> 75 ret = umr_sum (arr, axis, dtype, out, keepdims) 76 if isinstance (ret, mu.ndarray): 77 ret = um.true_divide (

TypeError: ufunc добавить нельзяse операнды с типами dtype ('

Любая идея, чтобы помочь мне, пожалуйста?

Спасибо

1 Ответ

2 голосов
/ 04 октября 2019

Кажется, что проблема с преобразованием даты между numpy и другими библиотеками ссылка . Я попытался использовать простое решение проблемы. Я не уверен насчет того, какой фактический сюжет нам нужен для генерации, но я дал ему шанс (надеюсь, это поможет).

from datetime import datetime, timedelta
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
date_today = datetime.now()
days = pd.date_range(date_today, date_today + timedelta(7), freq='D')

np.random.seed(seed=1111)
data = np.random.randint(1, high=100, size=len(days))
df = pd.DataFrame({'Date': days, 'Amount': data})


df.set_index('Date')['Amount'].plot(legend=True)


Изображение с выводом прилагается здесь Image of the output is attached here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...