Como calcular a autocorrelação em r
A autocorrelação mede o grau de similaridade entre uma série temporal e uma versão defasada dela mesma em intervalos de tempo sucessivos.
Às vezes também é chamada de “correlação serial” ou “correlação defasada” porque mede a relação entre os valores atuais de uma variável e seus valores históricos.
Quando a autocorrelação em uma série temporal é alta, torna-se fácil prever valores futuros simplesmente referindo-se a valores passados.
Como calcular a autocorrelação em R
Suponha que temos a seguinte série temporal em R que mostra o valor de uma determinada variável para 15 períodos diferentes:
#define data
x <- c(22, 24, 25, 25, 28, 29, 34, 37, 40, 44, 51, 48, 47, 50, 51)
Podemos calcular a autocorrelação para cada atraso na série temporal usando a função acf() da biblioteca tseries :
library (tseries) #calculate autocorrelations acf(x, pl= FALSE ) 0 1 2 3 4 5 6 7 8 9 10 1.000 0.832 0.656 0.491 0.279 0.031 -0.165 -0.304 -0.401 -0.458 -0.450 11 -0.369
A forma de interpretar o resultado é a seguinte:
- A autocorrelação no atraso 0 é 1 .
- A autocorrelação no atraso 1 é 0,832 .
- A autocorrelação no atraso 2 é 0,656 .
- A autocorrelação no atraso 3 é 0,491 .
E assim por diante.
Também podemos especificar o número de atrasos a serem exibidos com o argumento lag :
#calculate autocorrelations up to lag=5 acf(x, lag=5, pl= FALSE ) Autocorrelations of series 'x', by lag 0 1 2 3 4 5 1.000 0.832 0.656 0.491 0.279 0.031
Como traçar a função de autocorrelação em R
Podemos traçar a função de autocorrelação para uma série temporal em R simplesmente não usando o argumento pl=FALSE :
#plot autocorrelation function
acf(x)
O eixo x exibe o número de defasagens e o eixo y exibe a autocorrelação nesse número de defasagens. Por padrão, o gráfico começa em lag = 0 e a autocorrelação sempre será 1 em lag = 0.
Você também pode especificar um título diferente para o gráfico usando o argumento principal :
#plot autocorrelation function with custom title acf(x, main=' Autocorrelation by Lag ')
Recursos adicionais
Como calcular a autocorrelação em Python
Como calcular a autocorrelação no Excel