Test dickey-fuller aumentato in r (con esempio)
Una serie storica si dice “stazionaria” se non ha trend, presenta una varianza costante nel tempo e ha una struttura di autocorrelazione costante nel tempo.
Un modo per verificare se una serie temporale è stazionaria è eseguire un test Dickey-Fuller aumentato , che utilizza le seguenti ipotesi nulle e alternative:
H 0 : la serie temporale non è stazionaria. In altre parole, la sua struttura dipende dal tempo e la sua variazione non è costante nel tempo.
H A : La serie temporale è stazionaria.
Se il valore p del test è inferiore a un certo livello di significatività (ad esempio α = 0,05), allora possiamo rifiutare l’ipotesi nulla e concludere che la serie temporale è stazionaria.
Il seguente esempio passo passo mostra come eseguire un test Dickey-Fuller aumentato in R per una determinata serie temporale.
Esempio: test Dickey-Fuller aumentato in R
Supponiamo di avere i seguenti dati di serie temporali in R:
data <- c(3, 4, 4, 5, 6, 7, 6, 6, 7, 8, 9, 12, 10)
Prima di eseguire un test Dickey-Fuller aumentato sui dati, possiamo creare un rapido grafico per visualizzare i dati:
plot(data, type=' l ')
Per eseguire un test Dickey-Fuller aumentato, possiamo utilizzare la funzione adf.test() dalla libreria tseries .
Il codice seguente mostra come utilizzare questa funzione:
library (tseries) #perform augmented Dickey-Fuller test adf.test(data) Augmented Dickey-Fuller Test data:data Dickey-Fuller = -2.2048, Lag order = 2, p-value = 0.4943 alternative hypothesis: stationary
Ecco come interpretare i valori più importanti del risultato:
- Statistica del test: -2.2048
- Valore P: 0,4943
Poiché il valore p non è inferiore a 0,05, non riusciamo a rifiutare l’ipotesi nulla.
Ciò significa che la serie storica non è stazionaria. In altre parole, la sua struttura dipende dal tempo e la sua variazione non è costante nel tempo.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in R:
Come eseguire un test di tendenza di Mann-Kendall in R
Come tracciare una serie temporale in R
Come ridurre le tendenze dei dati