Cosa mostra il grafico di autocorrelazione (panda)?


12

Sono un principiante e sto cercando di capire cosa mostra un grafico di autocorrelazione.

Ho letto diverse spiegazioni da diverse fonti come questa pagina o la relativa pagina Wikipedia tra le altre che non sto citando qui.

Ho questo codice molto semplice, in cui ho le date nel mio indice per un anno e i valori stanno semplicemente aumentando da 0 a 365 per ogni indice. ( 1984-01-01:0, 1984-01-02:1 ... 1984-12-31:365)

import numpy as np
import pandas as pd
from pandas.plotting import autocorrelation_plot
import matplotlib.pyplot as plt

dr = pd.date_range(start='1984-01-01', end='1984-12-31')

df = pd.DataFrame(np.arange(len(dr)), index=dr, columns=["Values"])
autocorrelation_plot(df)
plt.show()

dove sarà il grafico stampato

inserisci qui la descrizione dell'immagine

Posso capire e vedere perché il grafico inizia da 1.00:

L'autocorrelazione con ritardo zero è sempre uguale a 1, poiché rappresenta l'autocorrelazione tra ciascun termine e se stesso. Il valore e il valore con ritardo zero saranno sempre gli stessi.

Questo è carino, ma perché questo grafico al ritardo 50 ha un valore di circa 0,65, ad esempio? E perché scende sotto lo 0? Se non avessi mostrato il codice in mio possesso, sarebbe possibile dedurre che questo grafico di autocorrelazione mostra una serie temporale di valori crescenti? In tal caso, puoi provare a spiegarlo a un principiante come puoi dedurlo?

Risposte:


12

Guardare lo stimatore per la funzione di autocovarianza a lag potrebbe essere utile (si noti che la funzione di autocorrelazione è semplicemente una versione ridotta della funzione di autocovarianza).h

γ^(h)=1nt=1nh(xt+hx¯)(xtx¯)

L'idea è che, per ogni ritardo , passiamo attraverso la serie e controlliamo se il punto dati tempo si allontana dalle covarie positivamente o negativamente (cioè quando supera la media della serie, va anche sopra o sotto ?).hhtt+h

La tua serie è una serie monotonicamente crescente e ha media . Vediamo cosa succede quando .183h=130

Innanzitutto, si noti che possiamo calcolare solo la funzione di autocovarianza fino al punto 234, poiché quando , .t=234t+h=365

Inoltre, nota che da fino a , abbiamo anche che è al di sotto della media (poiché 53 + 130 = 183 che è la media della serie).t=1t=53t+h

E poi, da a , la correlazione stimata sarà negativa in quanto covary negativamente.t=54t=182

Infine, da a , la correlazione stimata sarà di nuovo positiva, poiché e saranno entrambi al di sopra della media.t = 234 t t + ht=183t=234tt+h

Vedete come ciò comporterebbe la media della correlazione a causa dei contributi approssimativamente uguali alla funzione di autocovarianza dai punti positivamente covary e dai punti negativamente covary?

Potresti notare che ci sono più punti che sono negativamente covarying rispetto a punti che sono positivamente covarying. Tuttavia, intuitivamente, i punti di covarying positivamente sono di maggiore magnitudine (poiché sono più lontani dalla media) mentre i punti di covarying negativamente contribuiscono a una minore grandezza della funzione di autocovarianza poiché si avvicinano alla media. Pertanto, ciò si traduce in una funzione di autocovarianza di circa zero.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.