IniziaInizia gratis

Previsioni con un modello AR

Oltre a stimare i parametri di un modello, come hai fatto nell’esercizio precedente, con statsmodels puoi anche fare previsioni sia in-sample sia out-of-sample. L’in-sample è la previsione del punto dati successivo usando i dati fino a quel momento; l’out-of-sample prevede un qualsiasi numero di punti futuri. Puoi tracciare i dati previsti con la funzione plot_predict(). Devi fornire il punto di inizio e quello di fine della previsione, che può essere un numero qualsiasi di punti dopo la fine dell’insieme di dati.

Per i dati simulati nel DataFrame simulated_data_1, con \(\small \phi=0.9\), traccerai previsioni out-of-sample e gli intervalli di confidenza attorno a queste previsioni.

Questo esercizio fa parte del corso

Analisi delle serie temporali in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Importa la classe ARIMA e la funzione plot_predict
  • Crea un’istanza della classe ARIMA chiamata mod usando i dati simulati nel DataFrame simulated_data_1 e l’ordine (p,d,q) del modello (in questo caso, per un AR(1)), order=(1,0,0)
  • Stima il modello mod usando il metodo .fit() e salva il risultato in un oggetto chiamato res
  • Traccia i dati in-sample a partire dal punto dati 950
  • Traccia le previsioni out-of-sample e gli intervalli di confidenza con la funzione plot_predict(), iniziando dove i dati finiscono al punto 1000 e terminando la previsione al punto 1010

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Import the ARIMA and plot_predict from statsmodels
from statsmodels.tsa.arima.model import ARIMA
from statsmodels.graphics.tsaplots import plot_predict

# Forecast the first AR(1) model
mod = ARIMA(___, order=___)
res = mod.fit()

# Plot the data and the forecast
fig, ax = plt.subplots()
simulated_data_1.loc[950:].plot(ax=ax)
plot_predict(res, start=___, end=___, ax=ax)
plt.show()
Modifica ed esegui il codice