Добавить линию тренда для графика временных рядов в python - PullRequest
0 голосов
/ 03 апреля 2020

Я хочу добавить линию тренда для графика временной серии в python, это означает, что моя ось x (Datum) имеет формат datetime64[ns], когда я слежу за этой веткой: Как добавить линию тренда в python Matplotlib точечные (точечные) графики?

и запустить мой код:

import numpy as np
#Trendlines
z = np.polyfit(df1['Datum'], df1['Score'], 1)
p = np.poly1d(z)

Я получаю ошибку:

UFuncTypeError: ufun c 'add' не может использовать операнды с типами dtype ('

Как я могу это решить? Этот поток также не помог

1 Ответ

0 голосов
/ 03 апреля 2020

Обходной путь:

import matplotlib.pyplot as plt
import matplotlib.dates as mdates
x = mdates.date2num(df1['Datum'])
y= df1['Score']
z = np.polyfit(x, df1['Score'], 1)
p = np.poly1d(z)
#then the plot
df1.plot('Datum', 'Score')
plt.plot(x, p(x), "r--")

Дает результат с линейным графиком и линией тренда

...