Estes projetos foram apresentados no curso Microsoft Power BI Para Business Intelligence e Data Science oferecido pelo portal de capacitação profissional Data Science Academy (DSA) (link). Neste curso foi abordado não apenas a como utilizar o Microsoft Power BI, mas também como aplicar técnicas de Data Science para gerar modelos preditivos e extrair insights para a tomada de decisões, integrando o Power BI com Linguagem R e Python.
Os projetos são demonstrados em laboratórios práticos ou em mini-projetos, onde em cada um deles foram exploradas e trabalhadas diversas funcionalidades do Power BI, assim como foram estudadas e executadas soluções para diferentes problemas que podem vir a surgir em uma análise exploratória de dados. Todos os laboratórios e mini-projetos foram refeitos do zero por mim, construídos de acordo com as instruções do professor Daniel Mendes, instrutor responsável por este curso. Todo o material utilizado e produzido, incluindo os conjuntos de dados disponibilizados pela DSA (.csv ou .xlsx) e os relatórios/dashboards feitos por mim (.pbix), estão presentes neste repositório.
13. Laboratório Prático 7 - Machine Learning com Linguagem Python e Power BI dentro do Jupyter Notebook
14. Laboratório Prático 8 - Detecção de Anomalias em Transações Financeiras com Linguagem R e Power BI
15. Laboratório Prático 9 - Engenharia de Producão com Power BI e IA: Prevendo a Produção Industrial ao Longo do Tempo
Neste laboratório foram utilizados dados de vendas de uma empresa fictícia que comercializa produtos em todos os cantos do mundo.
O Dashboard deve responder às seguintes perguntas de negócio e seguir as seguintes especificações:
- Pergunta 1 - Qual o valor total vendido?
- Pergunta 2 - Quantas vendas foram realizadas por categoria de produto?
- Pergunta 3 - Quantas vendas foram realizadas por país considerando a prioridade de entrega?
- Pergunta 4 - Qual foi a média de desconto nas vendas por subcategoria de produto?
- Pergunta 5 - Quais países tiveram maior média de valor de venda? Demonstre em um mapa.
O Dashboard deve dar ao usuário a possibilidade de filtrar os dados por ano, por segmento e por país.
Neste laboratório foram explorados os conceitos de modelagem de dados, cardinalidade, recursos de limpeza de dados do Power BI e introdução ao DAX. Foram utilizados dados de vendas fictícios obtidos em 4 diferentes tabelas: Clientes, Pedidos, Produtos e Vendas.
O Dashboard deve responder às seguintes perguntas de negócio e seguir as seguintes especificações:
- Pergunta 1 - Qual foi o total de valor venda considerando cada modo de envio dos pedidos? Use um gráfico de cascata.
- Pergunta 2 - Quais mercados tiveram o maior custo médio de envio dos produtos vendidos? Use um gráfico treemap.
- Pergunta 3 - A empresa tem como objetivo (meta) manter uma média de 350 para o valor de venda todos os meses. Mostre um indicador (KPI – Key Performance Indicator) com o valor médio de venda. A empresa ficou abaixo ou acima da meta no mês de Abril/2014?
- Pergunta 4 - Considere que o lucro é equivalente a: Valor Venda - Custo Envio. Qual categoria de produto apresentou maior lucro médio?
- Pergunta 5 - Qual foi o comportamento da margem de lucro ao longo do tempo? Considere a margem de lucro como o Lucro dividido pelo Valor Venda.
Este Mini-Projeto trouxe uma breve introdução à análise de campanhas de Marketing com o Power BI. Foram gerados 4 Dashboards, mais de 10 elementos visuais, customizações, formatações, correções nos dados e utilização de diferentes recursos do Power BI. Os dados foram previamente customizados para este Mini-Projeto e representam informações sobre clientes e campanhas de Marketing realizadas por uma empresa fictícia.
Neste Mini-Projeto os relatórios foram divididos em 4 visões:
- Visão do Cliente
- Visão do Comportamento de Compra do Cliente
- Visão da Performance das Campanhas de Marketing
- Visão dos Padrões de Compra no Ponto de Venda (País)
Para cada visão foram compreendidas as variáveis, criados gráficos, medidas, extraídas métricas e cruzados os dados, visando entregar aos tomadores de decisão uma visão bastante completa sobre o perfil dos clientes, os padrões de compra e a efetividade das campanhas de Marketing.
Neste Mini-Projeto foi trabalhado um problema da área comercial, especificamente para analisar a performance de vendas de uma empresa fictícia. Ele trouxe uma breve introdução à análise de dados comerciais com o Power BI. Foram construídas diversas visualizações para compreender a performance de vendas de uma empresa fictícia por diferentes ângulos. Neste Mini-Projeto aprendi a trabalhar com interessantes recursos do Power BI como a Narrativa Inteligente, Principais Influenciadores, Gráfico de Faixas e criação de menu para índice do Dashboard.
Este Mini-Projeto trouxe uma breve introdução à análise de dados de RH (Recursos Humanos) com o Power BI, onde foram utilizados dados fictícios. Durante o projeto foram trabalhados alguns outros recursos e funcionalidades do Power BI, como tabela de medidas e coluna condicional.
O Dashboard criado deve responder às seguintes perguntas de negócio e seguir as seguintes especificações:
- Qual o total de funcionários atualmente na empresa?
- Qual o tempo médio de experiência dos funcionários (em anos)?
- Qual o total e percentual de funcionários do gênero masculino e feminino?
- Qual a média salarial mensal?
- Qual o total de funcionários por função?
- Qual o percentual de funcionários disponíveis para fazer hora extra?
- Qual o nível de envolvimento dos funcionários no trabalho considerando 4 categorias: Ruim, Baixo, Médio e Alto?
- Este item não deve estar no Dashboard, mas precisa ser calculado: Qual o total e o percentual de funcionários que devem receber promoção? Considerando a coluna “Anos Desde a última Promoção” com a seguinte regra: Se o funcionário tiver 5 anos ou mais desde a última promoção, deve ter a promoção considerada. Caso contrário, a promoção não deve ser considerada agora.
Este Mini-Projeto apresentou o seguinte estudo de caso com dados fictícios: Uma empresa de logística solicitou que um profissional fornecesse um dashboard para compreender como está o processo de entrega de produtos da empresa. O profissional não parecia ter muito conhecimento sobre Power BI e entregou um trabalho com nítidos problemas e erros. Os diretores da empresa pediram minha ajuda para revisar o dashboard, identificar e corrigir erros e problemas e apresentar uma nova versão. Todos os erros e problemas detectados devem ser justificados.
O Dashboard precisaria mostrar os seguintes KPIs de Logística:
- Total de Entregas no Prazo Por Canal de Entrega
- Percentual de Entregas Antecipadas Por Equipe de Entrega
- Total de Entregas Por Mês
- Total de Entregas de Produtos dos Top 5 Vendedores
- Total de Entregas com Atraso Por Cidade
- Percentual de Entregas Por Status de Entrega
Durante o projeto foram trabalhados alguns outros recursos e funcionalidades do Power BI, como classificação de rating e filtro com medida DAX.
Neste Mini-Projeto foram exploradas mais algumas funcionalidades do Power BI, agora no contexto da área de finanças. Foram utilizados dados fictícios, que continham problemas de layout colocados propositalmente e que foram então resolvidos, utilizando algumas funcionalidades inclusive o pivot de tabela.
Estudo de caso: Sua empresa deseja ter uma visão das receitas e despesas e solicitou que você criasse um Dashboard que permita analisar os seguintes indicadores financeiros:
- Total de Receitas
- Total de Despesas
- Margem de Lucro
- Total de Receitas Por Componente
- Total de Despesas Por Componente em relação à média de Despesas
- Total de Receitas e Despesas Por Componente e Por Ano, com a hierarquia Tipo/Componente.
Além disso a empresa precisa identificar os segmentos onde Receitas e Despesas são maiores e menores a fim de traçar seu plano estratégico. Seu trabalho é converter os dados brutos em conhecimento para suportar a tomada de decisões, através da análise de dados.
Neste laboratório foi construído um importante relatório contábil no Power BI, o Balanço Patrimonial. Utilizando dados fictícios, foram exploradas as funcionalidades do visual de Matriz, e estudadas em detalhes outras diversas funcionalidades do Power BI.
Neste Mini-Projeto foi construído um Dashboard Analítico do Mercado de Ações. Duas funcionalidades do Power BI foram exploradas: a Narrativa Inteligente e a Time Intelligence (manipulação de data). Foram utilizados dados reais, disponíveis publicamente, extraídos do portal da NASDAQ (link). Os dados da NASDAQ incluem várias colunas, cada uma fornecendo informações específicas sobre o preço e o volume de negociação das ações negociadas no mercado. Foram escolhidos dados de 5 empresas: IBM, Microsoft, Oracle, Tesla e Walmart.
O Dashboard deverá responder às seguintes perguntas de negócio e seguir as seguintes especificações:
- Qual o total de volume negociado de ações ao longo do tempo para as 5 empresas que estão sendo analisadas? Permita que essa análise seja feita para uma única empresa ou combinação de empresas.
- Qual o valor médio de abertura (Open), mais alto (High), mais baixo (Low) e de fechamento (Close) das ações de todas as empresas para todos os meses do período de dados analisado (1 ano em nosso exemplo)? Mostre no formato de tabela e permita que essa análise seja feita para uma única empresa ou combinação de empresas.
- Qual a variação da média do valor de fechamento (close) das ações de todas as empresas ao longo do tempo, mês a mês? Permita que essa análise seja feita para uma única empresa ou combinação de empresas.
- Use a Narrativa Inteligente para explicar as principais características e tendências nos dados.
- O Dashboard deve ser formatado.
Este laboratório prático foi focado na limpeza e manipulação de dados com Power BI, utilizando dados fictícios. Atividades realizadas durante o laboratório:
- Identificação e tratamento de registros duplicados.
- Identificação e tratamento de valores ausentes.
- Identificação e tratamento de valores outliers.
- Registros duplicados foram removidos.
- Valores ausentes foram preenchidos com a mediana da variável.
- Valores outliers foram substituídos pela mediana da variável.
Neste Laboratório foi demonstrado como a Linguagem M pode ser usada no Power BI para realizar uma das mais importantes tarefas em Ciência de Dados: a Engenharia de Atributos. Utilizando dados fictícios, foram aplicadas diversas tarefas e etapas como criação de novas variáveis, remoção de variáveis desnecessárias, transformações e correções.
let
Fonte = Csv.Document(File.Contents("C:\Users\Lenovo\Documents\Cursos\Data Science Academy\Microsoft Power BI Para Business Intelligence e Data Science\Laboratorios\Lab_5\Clientes.csv"),[Delimiter=",", Columns=10, Encoding=65001, QuoteStyle=QuoteStyle.None]),
#"Cabeçalhos Promovidos" = Table.PromoteHeaders(Fonte, [PromoteAllScalars=true]),
#"Tipo Alterado" = Table.TransformColumnTypes(#"Cabeçalhos Promovidos",{{"ID_Cliente", type text}, {"Idade", type text}, {"Peso", Int64.Type}, {"Altura", Int64.Type}, {"Estado Civil", type text}, {"Estado", type text}, {"Limite de Credito", Int64.Type}, {"Valor Desconto", Int64.Type}, {"Valor Compra", Int64.Type}, {"Tipo de Cliente", type text}}),
//Substituindo valor
#"Valor Substituído" = Table.ReplaceValue(#"Tipo Alterado","?","45",Replacer.ReplaceText,{"Idade"}),
//Ajustando o tipo da variável
#"Tipo Alterado2" = Table.TransformColumnTypes(#"Valor Substituído",{{"Idade", Int64.Type}}),
//Removendo coluna
#"Colunas Removidas" = Table.RemoveColumns(#"Tipo Alterado2",{"Estado Civil"}),
//Adicionando coluna
#"Personalização Adicionada" = Table.AddColumn(#"Colunas Removidas", "Valor Final", each [Valor Compra] - [Valor Desconto]),
//Dividindo coluna
#"Dividir Coluna pelas Posições" = Table.SplitColumn(#"Personalização Adicionada", "ID_Cliente", Splitter.SplitTextByPositions({0, 4}), {"ID_Cliente.1", "ID_Cliente.2"}),
#"Tipo Alterado1" = Table.TransformColumnTypes(#"Dividir Coluna pelas Posições",{{"ID_Cliente.1", type text}, {"ID_Cliente.2", Int64.Type}}),
//Renomeando coluna
#"Colunas Renomeadas" = Table.RenameColumns(#"Tipo Alterado1",{{"ID_Cliente.1", "Codigo"}, {"ID_Cliente.2", "ID"}}),
//Coluna condicional
#"Coluna Condicional Adicionada" = Table.AddColumn(#"Colunas Renomeadas", "% Desconto Especial", each if [Tipo de Cliente] = "Bronze" then 5 else if [Tipo de Cliente] = "Prata" then 10 else if [Tipo de Cliente] = "Ouro" then 15 else if [Tipo de Cliente] = "Diamante" then 20 else 0),
//Ajustando a escala dos dados com transformação logarítmica
#"Logaritmo de Base 10 Calculado" = Table.TransformColumns(#"Coluna Condicional Adicionada",{{"Limite de Credito", Number.Log10, type number}})
in
#"Logaritmo de Base 10 Calculado"
Neste laboratório foi demonstrado como conectar o Power BI a bancos de dados para extrair dados e criar análises, através de uma conexão ODBC (Open Database Connectivity). Utilizados dados fictícios e o banco de dados SQLite.
13. Laboratório Prático 7 - Machine Learning com Linguagem Python e Power BI dentro do Jupyter Notebook
Este laboratório prático apresentou o seguinte estudo de caso com dados fictícios: Imagine que uma empresa tenha dados históricos de clientes que fizeram compras de produtos ou serviços. Os dados incluem, para cada cliente: idade, renda anual e uma pontuação de gasto (poder de compra do cliente). A empresa gostaria de segmentar esses clientes em 3 grupos de acordo com similaridades a fim de personalizar as campanhas de Marketing. O gestor da área de Marketing espera receber um relatório com os 3 segmentos e para cada segmento a média de idade, renda anual e pontuação de gastos dos clientes. Seu trabalho é fazer isso acontecer utilizando Machine Learning.
Para escrever e executar o Python no navegador, foi utilizado o Google Colaboratory e foram empregadas as seguintes etapas:
- Carregamento dos dados
- Análise exploratória
- Pré-processamento dos dados
- Construção e treinamento do modelo de Machine Learning
- Publicação do Relatório no Power BI Online
- Edição do Relatório no Power BI Desktop
- Publicação do Relatório editado no Power BI Online
14. Laboratório Prático 8 - Detecção de Anomalias em Transações Financeiras com Linguagem R e Power BI
Este laboratório prático apresentou o seguinte estudo de caso com dados fictícios: Imagine que uma empresa da área financeira tenha dados históricos de clientes com duas transações financeiras (aqui chamadas de “transacao1” e “transacao2”). Os gestores acreditam que algumas dessas transações possam ser fraudulentas e gostariam de identificar as eventuais anomalias. Os gestores não fazem ideia do que seria uma anomalia e pediram sua ajuda para encontrar uma solução. De fato, eles não sabem se anomalias realmente ocorreram. Seu trabalho é usar Machine Learning para agrupar os dados de transações financeiras dos clientes e então detectar e definir as anomalias (se existirem). O resultado deve ser entregue no formato visual através de gráficos no Power BI.
Para este laboratório foi utilizado o RStudio e foram executadas as seguintes etapas:
- Instalação e carregamento dos pacotes para detecção de anomalias, manipulação e visualização de dados
- Carregamento dos dados
- Criação e treinamento do modelo de Machine Learning
- Previsões com o modelo usando os dados históricos
- Definição das anomalias de acordo com o anomaly score
- Aplicação do modelo de detecção de anomalias a novos dados
- Análise das anomalias com boxplot em linguagem R
- Análise das anomalias com boxplot no Power BI
Obs.: Algumas etapas intermediárias de preparação dos dados, como a análises exploratórias, limpezas e checagens, não foram realizadas pois os dados fictícios já foram previamente corrigidos e formatados.
15. Laboratório Prático 9 - Engenharia de Producão com Power BI e IA: Prevendo a Produção Industrial ao Longo do Tempo
Neste laboratório o Power BI foi usado para manipular e compreender os dados, explorando alguns conceitos de análise de séries temporais utilizando dados fictícios. Por fim, foram apresentados recursos de IA do Power BI para prever a média de unidades produzidas ao longo do tempo e detecção de anomalias. O Dashboard criado ao final do laboratório serve como ponto de partida para o dia a dia de Engenheiros de Produção.