Conteúdo do Curso
Análise de Séries Temporais
Análise de Séries Temporais
Decomposição
A Decomposição é uma técnica de análise de séries temporais que permite decompor uma série em vários componentes: sazonalidade, ruído e tendências.
Tomemos as vendas de um supermercado como exemplo.
Falando de sazonalidade, as vendas possuem sazonalidade diária (o número de compras aumenta à noite e pode ser menor pela manhã), sazonalidade semanal (a maioria das compras é feita às sextas-feiras e fins de semana) e sazonalidade mensal (por exemplo, mais compras são realizadas durante os meses de festas: dezembro, janeiro).
Vamos esclarecer o modelo matemático do método de decomposição:
Como podemos ver, os coeficientes T
, S
e R
são responsáveis por cada parâmetro.
Você pode ver a principal diferença entre tendência e sazonalidade abaixo:
Enquanto uma tendência é um componente geral sistemático linear ou não linear, um componente sazonal é recorrente. Ambos os tipos de componentes podem estar presentes na série temporal simultaneamente.
Para executar o método de decomposição, utilizaremos o método MSTL, que significa Decomposição Múltipla Sazonal-Tendência usando Loess. Importe statsmodel
para executar a decomposição de séries temporais:
from statsmodels.tsa.seasonal import MSTL
stl_kwargs = {"seasonal_deg": 0}
model = MSTL(data, periods=(24, 24 * 7), stl_kwargs=stl_kwargs)
res = model.fit()
seasonal = res.seasonal
trend = res.trend
residual = res.resid
res.plot()
Como resultado, temos o seguinte:
Com a ajuda desta visualização, já podemos acompanhar a tendência geral ascendente e a sazonalidade. De forma geral, a decomposição pode nos ajudar a passar da análise de uma série não estacionária para uma estacionária, excluindo o componente sazonal e a tendência, podemos analisar a série utilizando os resíduos.
Obrigado pelo seu feedback!