autocorrelazioni
La correlazione tra due variabili y1,y2 è definita come:
ρ=E[(y1−μ1)(y2−μ2)]σ1σ2=Cov(y1,y2)σ1σ2,
dove E è l'operatore di aspettativa, μ1 e μ2 sono i mezzi rispettivamente per y1 e y2 e σ1,σ2 sono le loro deviazioni standard.
Nel contesto di una singola variabile, ovvero l' auto- correlazione, y1 è la serie originale e y2 è una versione ritardata di essa. Sulla definizione di cui sopra, autocorrelazioni campione di ordine k=0,1,2,...può essere ottenuta calcolando la seguente espressione con la serie osservata yt , t=1,2,...,n :
ρ(k)=1n−k∑nt=k+1(yt−y¯)(yt−k−y¯)1n∑nt=1(yt−y¯)2−−−−−−−−−−−−−√1n−k∑nt=k+1(yt−k−y¯)2−−−−−−−−−−−−−−−−−−√,
dove y¯ è la media campionaria dei dati.
Autocorrelazioni parziali
Le autocorrelazioni parziali misurano la dipendenza lineare di una variabile dopo aver rimosso l'effetto di altre variabili che influiscono su entrambe le variabili. Ad esempio, l'autocorrelazione parziale dell'ordine misura l'effetto (dipendenza lineare) di yt−2 su yt dopo aver rimosso l'effetto di yt−1 su entrambi yt e yt−2 .
Ogni autocorrelazione parziale può essere ottenuta come una serie di regressioni del modulo:
y~t=ϕ21y~t−1+ϕ22y~t−2+et,
dove y~t è la serie originale meno la media del campione, yt−y¯ . La stima di ϕ22 fornirà il valore dell'autocorrelazione parziale dell'ordine 2. Estendendo la regressione con k ritardi aggiuntivi, la stima dell'ultimo termine fornirà l'autocorrelazione parziale dell'ordine k .
Un modo alternativo per calcolare le autocorrelazioni parziali del campione è risolvere il seguente sistema per ciascun ordine k :
⎛⎝⎜⎜⎜⎜ρ(0)ρ(1)⋮ρ(k−1)ρ(1)ρ(0)⋮ρ(k−2)⋯⋯⋮⋯ρ(k−1)ρ(k−2)⋮ρ(0)⎞⎠⎟⎟⎟⎟⎛⎝⎜⎜⎜⎜ϕk1ϕk2⋮ϕkk⎞⎠⎟⎟⎟⎟=⎛⎝⎜⎜⎜⎜ρ(1)ρ(2)⋮ρ(k)⎞⎠⎟⎟⎟⎟,
dove ρ(⋅) sono le autocorrelazioni del campione. Questa mappatura tra le autocorrelazioni del campione e le autocorrelazioni parziali è nota come
ricorsione di Durbin-Levinson . Questo approccio è relativamente semplice da implementare a scopo illustrativo. Ad esempio, nel software R, possiamo ottenere l'autocorrelazione parziale dell'ordine 5 come segue:
# sample data
x <- diff(AirPassengers)
# autocorrelations
sacf <- acf(x, lag.max = 10, plot = FALSE)$acf[,,1]
# solve the system of equations
res1 <- solve(toeplitz(sacf[1:5]), sacf[2:6])
res1
# [1] 0.29992688 -0.18784728 -0.08468517 -0.22463189 0.01008379
# benchmark result
res2 <- pacf(x, lag.max = 5, plot = FALSE)$acf[,,1]
res2
# [1] 0.30285526 -0.21344644 -0.16044680 -0.22163003 0.01008379
all.equal(res1[5], res2[5])
# [1] TRUE
Fasce di fiducia
Le bande di confidenza possono essere calcolate come il valore delle autocorrelazioni del campione ±z1−α/2n√z1−α/21−α/2
±z1−α/21n(1+2∑ki=1ρ(i)2)−−−−−−−−−−−−−−−−√