Я хотел бы узнать, как нарисовать линию наилучшего соответствия или линию, которая соединяет большинство точек;одна строка для локальных минимас и другая строка для локальных максима.
Примерно так же, как на этом рисунке:
Ниже приведены коды для поиска локальных минимас имаксимальные баллы
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from pandas_datareader import data as pdr
import fix_yahoo_finance as yf
yf.pdr_override()
startdate = dt.date(2016, 1, 1)
#enddate = dt.date(2018, 10, 22)
today = dt.date.today()
index_ticker = "^GSPC"
index_df = pdr.get_data_yahoo(index_ticker, start=startdate, end=today)
from scipy.signal import argrelextrema
n=50 # number of points to be checked before and after
# Find local peaks/bottoms
index_df['min'] = index_df.iloc[argrelextrema(index_df['Adj Close'].values, np.less_equal, order=n)[0]]['Adj Close']
index_df['max'] = index_df.iloc[argrelextrema(index_df['Adj Close'].values, np.greater_equal, order=n)[0]]['Adj Close']
# Plot results
plt.scatter(index_df['Adj Close'].index, index_df['min'], c='r')
plt.scatter(index_df['Adj Close'].index, index_df['max'], c='g')
plt.plot(index_df['Adj Close'].index, index_df['Adj Close'])
plt.show()
Я наткнулся на этот урок https://prappleizer.github.io/Tutorials/Plotting/Plotting.html, который рисует линию наилучшего соответствия с заштрихованной областью неопределенности.
Это то, что я ищу, но я не мог понять, как применить к временным рядам, чтобы получить желаемый результат, как во временисерия изображений.
Ценю, если кто-нибудь может посоветовать.Спасибо!