Я использую пакет scipy.stats для генерации линии линейной регрессии следующим образом:
from scipy.stats import linregress
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
value = np.array([51, 54, 66, 58, 25, 78, 69, 35, 95])
year = np.array([2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018])
y = pd.Series(value)
x = pd.Series(year)
slope, intercept, r_value, p_value, std_err = linregress(x, y)
line = [slope*xi + intercept for xi in x]
plt.plot(x, line, color = 'orange', label="Fitting Line", linewidth=1)
plt.scatter(x, y, s = 5, marker = '.', label="Sample Point", color = 'dodgerblue')
plt.show()
На текущем этапе линия регрессии охватывает только существующие зелья, но я буду sh предсказывать значение десять лет спустя. Есть ли другой эффективный способ прямой визуализации линии прогноза на графике (фактически расширить линию)?