ComeçarComece de graça

Calculando autocorrelações

Autocorrelações, ou correlações defasadas, são usadas para avaliar se uma série temporal depende do seu passado. Para uma série temporal x de comprimento n, consideramos os n-1 pares de observações separados por uma unidade de tempo. O primeiro desses pares é (x[2],x[1]), e o seguinte é (x[3],x[2]). Cada par é da forma (x[t],x[t-1]), em que t é o índice da observação, que variamos de 2 a n neste caso. A autocorrelação de defasagem 1 de x pode ser estimada como a correlação amostral desses pares (x[t], x[t-1]).

Em geral, podemos criar manualmente esses pares de observações. Primeiro, crie dois vetores, x_t0 e x_t1, cada um com comprimento n-1, de forma que as linhas correspondam aos pares (x[t], x[t-1]). Em seguida, aplique a função cor() para estimar a autocorrelação de defasagem 1.

Felizmente, o comando acf() oferece um atalho. Aplicar acf(..., lag.max = 1, plot = FALSE) a uma série x calcula automaticamente a autocorrelação de defasagem 1.

Por fim, observe que as duas estimativas diferem ligeiramente porque usam escalas ligeiramente diferentes no cálculo da covariância amostral, 1/(n-1) versus 1/n. Embora a segunda forneça uma estimativa tendenciosa, ela é preferida em análise de séries temporais, e as autocorrelações resultantes diferem apenas por um fator de (n-1)/n.

Neste exercício, você vai praticar tanto o cálculo manual quanto o automático de uma autocorrelação de defasagem 1. A série temporal x e seu comprimento n (150) já foram carregados. A série é mostrada no gráfico à direita.

Este exercício faz parte do curso

Análise de Séries Temporais em R

Ver curso

Instruções do exercício

  • Crie dois vetores, x_t0 e x_t1, cada um com comprimento n-1, de forma que as linhas correspondam aos pares (x[t], x[t-1]).
  • Confirme que x_t0 e x_t1 são pares (x[t], x[t-1]) usando o código pré-escrito.
  • Use plot() para ver o diagrama de dispersão de x_t0 e x_t1.
  • Use cor() para ver a correlação entre x_t0 e x_t1.
  • Use acf() com x para calcular automaticamente a autocorrelação de defasagem 1. Defina o argumento lag.max como 1 para produzir um único período de defasagem e defina o argumento plot como FALSE.
  • Confirme que o fator de diferença é (n-1)/n usando o código pré-escrito.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Define x_t0 as x[-1]
x_t0 <- 

# Define x_t1 as x[-n]
x_t1 <- 

# Confirm that x_t0 and x_t1 are (x[t], x[t-1]) pairs  
head(cbind(x_t0, x_t1))
  
# Plot x_t0 and x_t1
plot(___, ___)

# View the correlation between x_t0 and x_t1
cor(___, ___)

# Use acf with x
acf(___, lag.max = ___, plot = ___)

# Confirm that difference factor is (n-1)/n
cor(x_t1, x_t0) * (n-1)/n
Editar e executar o código