Tenho dados de vendas diárias de um produto altamente sazonal. Eu quero capturar a sazonalidade no modelo de regressão. Eu li que, se você tiver dados trimestrais ou mensais, nesse caso, poderá criar 3 e 11 variáveis fictícias, respectivamente - mas posso lidar com dados diários?
Eu tenho três anos de dados diários. As variáveis independentes são preço, sinal promocional (sim / não) e temperatura. A variável dependente é a venda desse produto. Não estou procurando um modelo de série temporal, pois estou usando um modelo de regressão múltipla.
Respostas:
O @Irishstat abordou praticamente o que eu estava prestes a dizer, mas eu responderia com minha própria experiência pessoal na modelagem desses dados com regressão de séries temporais e OLS.
Se for um dado diário, eu faria o seguinte:
Crie uma variável dummy para diferentes sazonalidades:
Crie uma variável fictícia para variáveis de tendência:
Se a série temporal exibir tendência linear, adicione uma variável de tendência temporal.
Se a série temporal exibir tendência não linear, adicione uma variável de tendência temporal não linear, como quadrático / cúbico / log
Adicionar variáveis independentes Variáveis
Como são dados de séries temporais, deve-se tomar cuidado com os efeitos de chumbo e atraso de varibales independentes. Por exemplo, no seu exemplo, você menciona a bandeira promocional de preço, eles podem não ter efeito imediato em sua resposta, ou seja, pode haver atraso e um efeito decadente / permanente . Por exemplo, se você executar uma promoção hoje, poderá ter um aumento nas vendas hoje, mas o efeito da promoção decairá após alguns dias. Não há uma maneira fácil de modelar isso usando regressão múltipla; você deseja usar a modelagem da função de transferência, que é parsimonoius e pode lidar com qualquer tipo de efeito de avanço e atraso. Veja este exemplo que publiquei anteriormente, onde há uma intervenção (no seu caso, preço) e há um aumento abrupto, seguido de um efeito decadente. Dito isto, se você tiverPara conhecer a priori o efeito lead e lag, crie variáveis adicionais no seu caso, variáveis fictícias antes e depois do preço e mudança de promoção (sim / não).
Você também precisará adicionar variáveis de indicador de feriados em movimento, por exemplo, como o Irishstat indicou que você deseja adicionar Páscoa / Ação de Graças (nos EUA) que estão movendo feriados. Feriados com datas fixas serão resolvidos automaticamente se você estiver usando um esquema de codificação fictícia para capturar a sazonalidade.
Além disso, você precisaria identificar valores discrepantes como aditivo / pulso (evento único) ou mudança de nível (mudança permanente) e adicioná-los como regressores. Identificar outliers em regressão múltipla para dados de séries temporais é quase impossível; você precisaria de métodos de detecção discrepantes de séries temporais, como o procedimento de Tsay ou o procedimento de Chen e Liu, que foi incorporado a softwares como AUTOBOX, SPSS, SAS ou o
tsoutlier
pacote em R.Problemas potenciais:
A seguir, estão os problemas que você encontraria se modelasse dados de séries temporais usando a regressão múltipla do OLS.
E há muitas mais desvantagens de usar a regressão múltipla. Se a previsão for mais importante para você, eu armazenaria pelo menos 6 meses de dados e testaria a capacidade preditiva de sua regressão múltipla. Se seu objetivo principal é explicar a correlação entre variáveis independentes, eu seria cauteloso usando a regressão múltipla e, em vez disso, usaria uma abordagem de séries temporais, como ARIMAX / GLS.
Se você estiver interessado, consulte o excelente texto de Pankratz , para função de transferência e modelagem de regressão dinâmica. Para previsão geral de séries temporais, consulte Makridakis et al . Além disso, um bom texto de referência seria de Diebold para regressão e previsão baseada em séries temporais.
fonte
O que você precisa é de um modelo que incorpore efeitos diários, efeitos semanais, efeitos mensais, efeitos da semana do mês, efeitos do dia do mês, efeitos de lead e lag dos feriados, mudanças de nível / etapa não especificadas, mas empiricamente identificáveis, tendências da hora local, mudanças nos pulsos sazonais e pulsos ao incorporar a estrutura ARIMA e possivelmente lidar com alterações nos parâmetros e na variação de erros ao longo do tempo. Isso é chamado de Função de Transferência e pode ser facilmente reajustado (MAS NÃO PARSIMONIAMENTE) como uma Regressão Linear Múltipla.
Especificamente, um indicador diário levaria 6 preditores. Em geral, é preciso orquestrar cuidadosamente (identificar) que tipo de preditores são necessários. Se você tem muito tempo em mãos, pode experimentar algumas das estruturas que mencionei. Como alternativa, você pode precisar de algum software / consultoria avançada para resolver seu problema durante a sua vida.
fonte