Coleção series-temporais

Tirar sazonalidade

Estima o efeito de cada período do ciclo por regressão e o subtrai da série, mostrando os efeitos com erro-padrão e p-valor.

O que o bloco faz

series/deseasonalize estima o efeito de cada período do ciclo (cada mês, numa série mensal) por regressão em variáveis indicadoras e subtrai esse efeito da série, deixando a tendência e o resto. O card mostra os efeitos estimados, com erro-padrão e p-valor, como na series/regression. As saídas são out, a série dessazonalizada, e sazonal, o componente removido; somar as duas devolve a série original.

Com Controlar a tendência ligado (o padrão), o ajuste é valor ~ t + periodo, e só o efeito sazonal é removido. Isso importa numa série que cresce: dezembro tem média acima de janeiro só por vir depois, e as indicadoras sozinhas atribuiriam essa diferença à sazonalidade. Desligado, o ajuste é valor ~ periodo, e cada efeito é a média do período menos a média geral, o que só é correto para série sem tendência.

Antes de continuar

Termos que esta página usa, em poucas palavras. As definições completas estão no glossário.

p-valor
A probabilidade de obter um resultado tão extremo quanto o observado, ou mais, se a hipótese nula fosse verdadeira. p-valor pequeno indica dados pouco compatíveis com a hipótese nula; ele não é a probabilidade de a hipótese nula ser verdadeira nem mede o tamanho do efeito.
Independência
Pressuposto de que o erro de uma observação não informa sobre o de outra. Falha com medidas repetidas no mesmo indivíduo, unidades vizinhas ou dados no tempo, e a sua violação pode distorcer bastante os p-valores e os intervalos.
Autocorrelação
A correlação de uma série com ela mesma deslocada no tempo: o valor de hoje parecido com o de ontem. É o padrão que os modelos de séries descrevem, e o que torna inválidos os testes que supõem observações independentes.
Tendência
O movimento de longo prazo de uma série, de subida ou de descida, separado das oscilações de curto prazo e da sazonalidade.
Sazonalidade
Um padrão que se repete em intervalos fixos do calendário, como mais chuva em janeiro ou mais vendas em dezembro. O período sazonal é o comprimento do ciclo: 12 para dados mensais com ciclo anual.

Quando usar

Para retirar uma sazonalidade fixa e aditiva antes de olhar a tendência ou de aplicar um teste que pede série sem ciclo. Se a amplitude da oscilação cresce com o nível da série, aplique series/transform com log antes. Se a sazonalidade muda ao longo dos anos, a decomposição indicada é a series/stl.

Pressupostos

Configuração

  • Controlar a tendência — inclui t no ajuste (padrão).
  • Contraste — soma_zero (desvio da média do ciclo) ou categoria_base (diferença para o primeiro período).
  • Excluir termos sazonais — nomes ou números separados por vírgula; os períodos excluídos formam o grupo demais.
  • Remover termos sazonais não significativos e Confiança da remoção — remoção para trás; os p-valores finais ficam otimistas.

O bloco não aceita valores faltantes (interpole antes com series/interpolate) e pede série com ciclo, isto é, frequência maior que 1. Com ciclos incompletos, ele avisa.

Exemplo

Série de exemplo
Transformar
Tirar sazonalidade
Série no tempo
library(trama)

reg <- tr_registry()
tr_use("trama.series", registry = reg)

tr_flow(reg) |>
  tr_add("pax", "series/example") |>
  tr_add("log", "series/transform", metodo = "log", from = "pax") |>
  tr_add("dessaz", "series/deseasonalize", from = "log") |>
  tr_add("efeito", "series/plot", from = "dessaz:sazonal")

Como interpretar

Cada efeito estimado é o quanto aquele período fica, em média, acima ou abaixo do nível da série, descontada a tendência. Os p-valores dos efeitos individuais não substituem um teste da sazonalidade como um todo: para o F da sazonalidade, ajuste a series/regression com a mesma fórmula e leia o models/anova_table; sem supor normalidade, use a series/seasonality_kw. A sazonalidade removida é a mesma em todos os anos.

Implementação

  • stats::lm() versão 4.6.0valor ~ t + periodo (ou valor ~ periodo), com periodo fator do ciclo e contraste contr.sum ou contr.treatment posto no fator; o componente sazonal é a parte do preditor que vem de periodo, centrada pela média do ciclo.

No código O bloco chama trama.series::tr_series_deseasonalize(), em trama.series/R/regressao.R:444.

A conta é feita nesta chamada:

Outras funções de pacotes que o bloco usa (40)

Referências

Livro-texto

  • Morettin, P. A.; Toloi, C. M. C. (2006). Análise de séries temporais. 2. ed. São Paulo: Blucher.
  • Hyndman, R. J.; Athanasopoulos, G. (2021). Forecasting: Principles and Practice. 3. ed. Melbourne: OTexts. https://otexts.com/fpp3/

Ver a bibliografia completa do trama