O que é uma janela deslizante?

Manipulando Dados de Séries Temporais em R

Harrison Brown

Graduate Researcher in Geography

Janelas

  • Uma janela é um intervalo limitado de observações

Analogia conceitual destacando as semelhanças entre uma janela em série temporal e a barra de rolagem de um monitor.

Manipulando Dados de Séries Temporais em R

Janelas

Dados originais:

Gráfico da série temporal FTSE, com tendência geral de alta.

Janela:

Gráfico mostrando uma janela de série temporal baseada no conjunto FTSE. A janela vai de 1992 a 1993 e é um subconjunto menor de todo o período (1991 a 1999).

Manipulando Dados de Séries Temporais em R

Estatísticas globais de resumo

mean(ftse)
[1] 3565.643
autoplot(ftse) + 
  geom_hline(
    yintercept = mean(ftse)
  ) + 
  ...

Média global:

Gráfico da série FTSE com uma linha horizontal azul tracejada em ~3.500, representando a média global do conjunto.

Manipulando Dados de Séries Temporais em R

Janela deslizante

  • Mede como as estatísticas mudam ao longo do tempo

Gráfico da série temporal FTSE.

  • Média móvel em vermelho sobre os dados originais

Gráfico da série FTSE com a média móvel sobreposta em vermelho. A média móvel segue de perto a série e mostra tendência geral de alta.

Manipulando Dados de Séries Temporais em R

Rolando com zoo

  • zoo::rollmean()
  • zoo::rollsum()
  • zoo::rollmax()
rollmean(ftse,
         k = 30,
         align = 'right',
         fill = NA)
Manipulando Dados de Séries Temporais em R

Argumentos da janela

ftse_rm_right <-
  rollmean(ftse,
           k = 7,
           align = "right",
           fill = NA)
  • k: Tamanho da janela
  • align: Alinhamento da janela
  • fill: Valores para preencher fora da janela
ftse_rm_right
[1]    NA
[2]    NA
[3]    NA
[4]    NA
[5]    NA          
[6]    NA
[7]    2465.971
[8]    2475.229
[9]    2482.414
...
Manipulando Dados de Séries Temporais em R

Valores NA

ftse_rm_right
 [1]    NA
 [2]    NA
 [3]    NA
 [4]    NA
 [5]    NA          
 [6]    NA
 [7]    2465.971
 [8]    2475.229
 [9]    2482.414
...
sum(is.na(ftse_rm_right))
[1] 6
Manipulando Dados de Séries Temporais em R

Alinhamento da janela

Alinhamentos:

  • Alinhada à direita
data_rm <- rollmean(
  data,
  k = 7,
  fill = NA,
  align = "right"
)

Gráfico de série temporal com uma janela alinhada à direita sobreposta. Mostra onde a saída da função de rolagem é "colocada" em relação aos dados: com alinhamento à direita, a saída fica à direita da janela usada.

Manipulando Dados de Séries Temporais em R

Alinhamento da janela

Alinhamentos:

  • Alinhada à esquerda
data_rm <- rollmean(
  data,
  k = 7,
  fill = NA,
  align = "left"
)

Gráfico de série temporal com uma janela alinhada à esquerda sobreposta. Mostra onde a saída da função de rolagem é "colocada" em relação aos dados: com alinhamento à esquerda, a saída fica à esquerda da janela usada.

Manipulando Dados de Séries Temporais em R

Alinhamento da janela

Alinhamentos:

  • Alinhada ao centro
data_rm <- rollmean(
  data,
  k = 7,
  fill = NA,
  align = "center"
)

Gráfico de série temporal com uma janela alinhada ao centro sobreposta. Mostra onde a saída da função de rolagem é "colocada" em relação aos dados: com alinhamento central, a saída fica no meio da janela usada.

Manipulando Dados de Séries Temporais em R

Vamos praticar!

Manipulando Dados de Séries Temporais em R

Preparing Video For Download...