Transformações para estabilizar a variância

Previsão em R

Rob J. Hyndman

Professor of Statistics at Monash University

Estabilização da variância

  • Se os dados mostram maior variação conforme o nível da série aumenta, uma transformação pode ajudar

  • $y_1,...,y_n$: observações originais, $w_1,...,w_n$: observações transformadas

Raiz quadrada $w_t = \sqrt{y_t}$ $\downarrow$
Raiz cúbica $w_t = \sqrt[3]{y_t}$ Crescente
Logaritmo $w_t = \text{log}(y_t)$ Intensidade
Inversa $w_t = -1/y_t$ $\downarrow$
Previsão em R

Estabilização da variância

autoplot(usmelec) +
  xlab("Year") + ylab("") +
  ggtitle("US monthly net electricity generation")

Gráfico da geração líquida mensal de eletricidade nos EUA

Previsão em R

Estabilização da variância

autoplot(usmelec^0.5) +
  xlab("Year") + ylab("") +
  ggtitle("Square root electricity generation")

Gráfico da geração de eletricidade com raiz quadrada

Previsão em R

Estabilização da variância

autoplot(usmelec^0.33333) +
  xlab("Year") + ylab("") +
  ggtitle("Cube root electricity generation")

Gráfico da geração de eletricidade com raiz cúbica

Previsão em R

Estabilização da variância

autoplot(log(usmelec)) +
  xlab("Year") + ylab("") +
  ggtitle("Log electricity generation")

Gráfico da geração de eletricidade com logaritmo

Previsão em R

Estabilização da variância

autoplot(-1/usmelec) +
  xlab("Year") + ylab("") +
  ggtitle("Inverse electricity generation")

Gráfico da geração de eletricidade com inversa

Previsão em R

Transformações de Box-Cox

  • Cada uma dessas transformações é próxima de um membro da família de transformações de Box-Cox

$$w_t = \begin{cases} log(y_t) & \lambda = 0 \\ (y_t^\lambda - 1)/\lambda & \lambda \neq 0 \end{cases}$$

  • $\lambda = 1 \ $: Sem transformação relevante
  • $\lambda = \frac{1}{2} \ $: Raiz quadrada mais transformação linear
  • $\lambda = \frac{1}{3} \ $: Raiz cúbica mais transformação linear
  • $\lambda = 0 \ $: Transformação logaritmo natural
  • $\lambda = -1 \ $: Transformação inversa
Previsão em R

Transformações de Box-Cox

BoxCox.lambda(usmelec)
-0.5738331
Previsão em R

Retrotransformação

usmelec %>%
  ets(lambda = -0.57) %>%
  forecast(h = 60) %>%
  autoplot()

Gráfico com retrotransformação da previsão

Previsão em R

Vamos praticar!

Previsão em R

Preparing Video For Download...