Colunas calculadas no SharePoint | Uma visão geral
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
A previsão é um aspecto importante da análise de dados, pois permite que as empresas tomem decisões informadas sobre o futuro com base em dados históricos. Uma maneira eficiente de executar essa tarefa é utilizando o modelo de previsão do LuckyTemplates usando Python. O LuckyTemplates é uma ferramenta popular de business intelligence que permite aos usuários criar visualizações de dados, relatórios e painéis interativos.
Neste tutorial, aprendemos como criar um modelo de previsão no LuckyTemplates usando Python. Usaremos o Python no Power Query para criar valores previstos e trazê-los para as visualizações do LuckyTemplates. Você pode assistir ao vídeo completo deste tutorial na parte inferior deste blog .
Índice
Exemplos de modelo de previsão do LuckyTemplates
Abaixo estão alguns modelos de previsão do LuckyTemplates para mostrar o que queremos alcançar neste tutorial. Essas são visualizações de página reais que revelam a sazonalidade semanal e alguns picos sazonais nos dados.
No final, podemos ver a tendência crescente em nossos dados que queremos captar em nosso modelo.
Modelo de previsão do LuckyTemplates: controles e limitações
Abaixo está o modelo para a previsão de 30 dias criada usando o LuckyTemplates. Ele tem a mesma sazonalidade das exibições de página reais e, no LuckyTemplates, também temos opções para controlar alguns dos dados.
Podemos fazer isso abrindo o Analytics no painel Visualizações . Em seguida, passe o mouse para Previsão > Opções .
Coloque 30 dias no comprimento da previsão e defina o intervalo de confiança em 95%. O sistema pode prever a sazonalidade com sua configuração padrão, mas também podemos adicionar 7 para representar a sazonalidade semanal.
Clique em Aplicar e devemos obter um modelo semelhante ao acima.
Análise de tendências para modelos de previsão de Python e LuckyTemplates
O LuckyTemplates faz um ótimo trabalho ao modelar a sazonalidade. No entanto, sua linha de tendência não tem o mesmo desempenho.
Para iniciar a análise de tendências , ative a linha Tendência no painel Visualizações .
Uma vez, podemos ver uma tendência ascendente. Devemos ser capazes de adicionar essa tendência aos nossos dados, o que influenciará a previsão.
Podemos fazer isso com nosso modelo Python . Como vemos no modelo abaixo, a tendência pegou sazonalidade em vez de ficar estável.
Usando código Python para previsão
Usar o Python para atingir nosso objetivo não é uma tarefa difícil. Para começar, abra seu Jupyter Notebook .
Traga os dados de que precisamos: pandas, matplotlib.pyplot, seaborn e ExponentialSmoothing .
Existem outros modelos que provavelmente serão mais precisos, mas exigirão mais otimização.
Também traremos a sazonal_decomposição para ver a sazonalidade e a tendência. Em seguida, use a previsão da web web_forecast.xlsx para ler nossos dados.
Em seguida, altere a data usando o código abaixo.
Defina o índice do nosso conjunto de dados como Date e chame-o de ts. Em seguida, defina a frequência do conjunto de dados. Sabemos que temos dados diários, então vamos definir a frequência como d como em day e salvá-la como ts .
Finalmente, plote usando ts.plot ( ).
Após a plotagem, devemos ver exatamente o que vimos em nosso bloco de anotações do LuckyTemplates.
Para ter uma ideia melhor dos componentes em nossa tendência real, podemos usar o seguinte código.
O primeiro modelo é o nosso Actuals . Próximo a ela está a linha de tendência que pegamos com sazonal_decompose(ts).plot(); .
Esta é a tendência que precisamos adicionar ao modelo.
Também temos a sazonalidade que podemos adicionar ao LuckyTemplates e ao modelo de Suavização Exponencial.
Nosso último modelo mostra os Resíduos ou imprevistos nos dados que são representados por pontos. Observe que, à medida que nos aproximamos do final de nossos dados, podemos ver que há muito mais eventos acontecendo.
Treinando o modelo
Com nosso modelo, precisamos treinar nossos dados, que normalmente são seguidos por testes. No entanto, neste caso, não testaremos nosso modelo porque usaremos apenas o que o modelo nos fornece.
Há 298 dias em nosso conjunto de dados, mas, neste exemplo, precisamos apenas que o modelo se lembre de 290 desses dias. Isso ocorre porque não queremos fornecer ao modelo todos os dados que ele não pode aprender e que, eventualmente, apenas copiará.
Basicamente, temos esse conjunto de treinamento de 290 dias de 298.
Em seguida, use ExponentialSmoothing para nosso modelo. Em seguida, passe o conjunto de dados de treinamento que é de 290 dias e use add (aditivo) para nossa tendência, mul (multiplicativo) para nossa temporada e 7 para os períodos sazonais. Em seguida, ajuste esses dados no modelo.
Tendências aditivas e multiplicativas
Vamos ter uma rápida visão geral do que são as tendências aditivas e multiplicativas.
Em um modelo aditivo, a tendência aumenta lentamente, enquanto no modelo multiplicativo , ela aumenta exponencialmente e também há muita coisa acontecendo. Podemos usar qualquer um dos dois para obter um tipo diferente de previsão.
Podemos brincar com os métodos aditivo e multiplicativo para modificar nossa previsão. Nossos dados atuais estão claramente crescendo, por isso é imperativo usar o aditivo, mas também podemos tentar usar o multiplicativo para ver o que obteremos.
Por exemplo, altere a sazonalidade de mul para add .
Execute os dados e observe como a previsão muda.
Da mesma forma, podemos alterar a tendência de add para mul .
Isso deve produzir uma tendência multiplicativa um pouco maior.
Depois de tentar as combinações possíveis, o uso de mul tanto para tendência quanto para sazonal produziu o MELHOR resultado.
Assim que tivermos esse modelo de previsão, podemos usá-lo para prever com 30 dias de antecedência.
Implementação do LuckyTemplates
Vamos criar o mesmo modelo de previsão do LuckyTemplates em nosso bloco de anotações do LuckyTemplates.
Em nossa Previsão do LuckyTemplates , vá para Visualizações > Análise > Opções. Observe como definimos a duração da previsão para 30 dias.
Vamos ver como podemos implementar esse código facilmente no Power Query.
Clique em Transformar dados.
No Editor do Power Query, traga os dados e adicione a coluna personalizada para a categoria . Use Reais para que possamos dividir posteriormente os Reais das Previsões.
Se formos para a consulta de previsões , veremos um conjunto de dados menor equivalente a 30 dias no futuro.
Revendo o script Python
Nosso script Python contém informações semelhantes. Primeiro, trazemos um conjunto de dados, salvamos como df , alteramos Date para datetime e definimos a frequência como d (dia).
Também trazemos nosso modelo ExponentialSmoothing de holtwinters . Tomamos os primeiros 290 dias como nosso conjunto de treinamento e adicionamos esses dados ao modelo.
Em nosso modelo ExponentialSmoothing , adicionamos os dados de treinamento e definimos as tendências e sazonais como mul (multiplicativo) e os períodos sazonais como 7 dias. Então ajustamos nosso modelo.
Em seguida, obtemos um novo quadro de dados ou tabela com nossa previsão. Redefinimos o índice e garantimos que eles sejam nomeados Data e Visualizações de página para corresponder ao que temos em nossos dados originais. Por fim, clicamos em OK.
Na saída, recebemos todas essas variáveis dentro dos dados.
Vá para Etapas aplicadas e clique em Coluna adicionada . Isso abre uma tabela com nossos valores previstos e a coluna personalizada que tem Previsão como categoria.
Na próxima consulta, simplesmente anexamos os dois conjuntos de dados onde temos os dados reais e as previsões .
Clique em Fechar e Aplicar.
O modelo mudou ligeiramente quando aplicamos o método multiplicativo.
Comparado ao LuckyTemplates, podemos facilmente fazer uma previsão e otimizar um pouco mais o modelo alterando a natureza aditiva da tendência e a sazonalidade em Python . Da mesma forma, podemos adicionar essas previsões ao nosso conjunto de dados real.
Criando previsões futuras no LuckyTemplates usando DAX
Como fazer análise de tendências no LuckyTemplates usando DAX
Gerenciando a sazonalidade em sua análise de orçamento – LuckyTemplates avançado
Conclusão
Neste blog, percorremos o processo de criação de um modelo de previsão no LuckyTemplates usando Python . Ao integrar o Python ao LuckyTemplates, podemos acessar uma ampla gama de ferramentas de análise e modelagem de dados, o que nos permite criar previsões mais avançadas.
Com as habilidades que você aprendeu neste tutorial, agora você pode criar seus próprios modelos de previsão no LuckyTemplates e usá-los para planejar o futuro com confiança. Lembre-se de que a previsão é um processo iterativo, portanto, não hesite em experimentar diferentes algoritmos e técnicas para encontrar aquele que funciona melhor para seus dados e verifique e atualize continuamente seu modelo à medida que novos dados chegam.
Tudo de bom,
gaelim holanda
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates
Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.
Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.
Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.
Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.
Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.
O que é self em Python: exemplos do mundo real
Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.
Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.