Aproveite o mês das
carreiras na Alura

Até 44% OFF

Falta pouco!

00

DIAS

00

HORAS

00

MIN

00

SEG

Alura > Cursos de Data Science > Cursos de Análise de Dados > Conteúdos de Análise de Dados > Primeiras aulas do curso Power BI: análises avançadas com DAX

Power BI: análises avançadas com DAX

Projeto e revisão dos fundamentos - Apresentação

Apresentando o instrutor e o curso

Olá! Meu nome é Henrique Frizo, sou instrutor na Alura e ministro treinamentos de Power BI há quase 10 anos. Sou certificado pela Microsoft como especialista em Power BI desde 2020. Já formei mais de 5 mil alunos ao redor do mundo e atuo como consultor de Power BI para empresas no Brasil e no exterior.

Audiodescrição: Henrique é um homem branco, com cabelo e barba escuros. Ele veste uma camiseta preta lisa. Ao fundo, há uma parede branca com luzes azuis e rosa refletindo nela.

Explicando o conteúdo do curso

Este curso é direcionado especialmente para aqueles que já possuem conhecimento básico em DAX dentro do Power BI. Vamos abordar conceitos mais avançados, partindo do pressuposto de que já conhecem e aplicam DAX no dia a dia. Neste curso, ensinaremos como manipular funções DAX para obter insights valiosos.

Neste curso, iremos aprender não apenas funções iterativas em níveis mais avançados, mas também a aplicar análise de parâmetros, funções de inteligência de tempo e muitas outras. Criamos dezenas de funções que nos ajudarão a entender melhor nossa rotina de trabalho no dia a dia, não apenas na empresa em que estamos atuando, mas também em qualquer outra onde se deseje aplicar inteligência de DAX.

Incentivando a participação e o foco

Este curso segue o padrão da Alura, o que significa que temos acesso ao nosso fórum, Discord e várias outras ferramentas que podem nos ajudar a esclarecer dúvidas e impulsionar nosso aprendizado. É importante participar do nosso fórum, pois certamente há pessoas com as mesmas dúvidas que nós, que também desejam contribuir com suas questões.

Portanto, não perca mais tempo. Comece agora nosso treinamento, desligue o celular, feche as redes sociais, concentre-se, pegue uma água, pois temos uma jornada incrível pela frente.

Projeto e revisão dos fundamentos - Apresentação do cenário da Zoop e objetivos do painel

Introduzindo o projeto e a importância do conhecimento dos dados

Antes de tudo, em qualquer projeto de Power BI, é muito importante que conheçamos todo o cenário e, principalmente, a base de dados com a qual iremos trabalhar. Sem conhecer os dados, não seremos capazes de manipulá-los ou extrair inteligência deles.

Neste primeiro momento, vamos mostrar como abrir o arquivo de Power BI que utilizaremos nesta aula. Todos os arquivos e materiais que utilizaremos estarão disponíveis na seção de downloads do nosso curso. Após fazer o download, podemos salvar em qualquer pasta da nossa máquina e, em seguida, abrir o arquivo relatorio-aula1.pbix com dois cliques. A extensão .pbix é a do Power BI.

Apresentando o cenário da Zoop Megastore

Vamos conhecer o cenário da Zoop Megastore, a empresa que utilizaremos em nosso projeto. Fomos contratados pela Zoop Megastore para resolver alguns problemas de nível mais avançado, extraindo inteligência dos dados através das funções DAX. A Zoop Megastore está atuando nos Estados Unidos, e nosso banco de dados está em inglês, o que é uma excelente oportunidade para treinar o inglês ou aprender a trabalhar com bases de dados em inglês.

Neste projeto, não precisaremos realizar ETL, modelagem ou visualização. O time da Zoop Megastore nos contratou exclusivamente para extrair inteligência dos dados através das funções DAX do Power BI. Não nos preocuparemos em criar gráficos bonitos ou em realizar um ETL 100% eficiente, pois já fizemos a configuração inicial e estamos entregando tudo pronto. Caso desejemos, também disponibilizaremos a planilha de Excel que o time da Zoop Megastore nos enviou, permitindo que façamos o ETL, se quisermos, mas não é necessário. Nosso foco é extrair inteligência através das funções DAX.

Explorando as tabelas de dados

Vamos conhecer os dados agora.

Ao acessar o menu lateral esquerdo, clicamos no segundo botão para visualizar nossos dados. Primeiramente, temos a dimensão calendário, que é a tabela utilizada para realizar todas as extrações de inteligência de tempo. Explicaremos isso em detalhes posteriormente.

Em seguida, temos a dimensão canal de vendas, que inclui o canal de vendas online, o retail (varejo), o wholesaler (atacado) e o partner (parcerias), entre outros. Embora não seja o foco agora, é importante mencionar.

Detalhando as informações de clientes e produtos

Também temos o cadastro de clientes, que inclui as regiões de origem desses clientes. Além disso, há os produtos cadastrados, como smartphones, laptops, tablets, acessórios e outros. Cada produto pertence a uma categoria e subcategoria, e possui preço base e custo associados.

Em seguida, encontramos o budget (orçamento) para as campanhas, que está disponível para cada um dos nossos canais e categorias. Também temos o budget de marketing, que detalha as campanhas realizadas e os gastos em marketing.

Analisando tabelas de retornos e vendas

A tabela de retornos é importante, pois em uma loja de varejo é comum haver devoluções. Esses retornos representam nossas devoluções. A tabela de vendas, denominada Sales, será utilizada majoritariamente durante todo o projeto.

Por fim, temos a tabela de medidas, que já está criada para quando começarmos a responder às questões que surgirem. Recomendamos que, após a finalização deste vídeo, você examine com mais calma toda essa base de dados para entender melhor o que será feito daqui para frente. Em todas as etapas do projeto, discutiremos detalhadamente cada um desses elementos.

Iniciando a aplicação prática das funções DAX

Agora, vamos dar continuidade e começar a responder as primeiras perguntas enviadas pelo time da Zoop. Vamos aplicar DAX na prática.

Projeto e revisão dos fundamentos - Revisão prática de CALCULATE() e FILTER() – a base do DAX avançado

Recebendo solicitações e revisando dados

Recebemos inúmeras solicitações do time da Zoop, abrangendo diversas áreas da empresa, incluindo o setor financeiro, marketing e o time de produto. Precisaremos realizar várias análises. Para organizar essas informações de forma clara, decidimos focar nas principais funções que queremos utilizar para responder às perguntas que nos foram apresentadas. A primeira questão que abordaremos é sobre quanto foi vendido através do canal de vendas online.

Antes de mais nada, vamos revisar os dados que temos. Ao observar a nossa tabela de vendas, encontramos várias colunas com preços e valores. Caso não compreendamos bem o inglês, podemos traduzir, mas é interessante nos esforçarmos para ler como está, pois frequentemente trabalhamos com bancos de dados em outras línguas, especialmente em inglês. Na tabela, temos o preço unitário, o custo unitário, o percentual de desconto aplicado na venda, o net price (preço líquido), o total de vendas, o custo e a margem.

Calculando o total de vendas online

Neste momento, queremos saber o total de vendas online, então focaremos na coluna chamada REVENUE, que representa o total de vendas. Vamos acessar o menu lateral direito, onde está a nossa tabela de medidas. Clicamos com o botão direito e selecionamos "nova medida". Criamos uma medida chamada Total de Vendas e inserimos a função SUM. A função SUM é utilizada para somar uma única coluna verticalmente. No nosso caso, queremos somar a coluna REVENUE.

Para fazer isso, começamos com a definição da medida:

Total de Vendas =

Em seguida, utilizamos a função SUM para somar os valores:

Total de Vendas = 
SUM(

E finalmente, especificamos a coluna que queremos somar:

Total de Vendas = 
SUM(FactSales[Revenue])

Digitamos REVENUE, selecionamos a sugestão, fechamos os parênteses e pressionamos "Enter". Aparece uma calculadora indicando que isso é uma medida. Arrastamos e soltamos para visualizar que o faturamento total da empresa foi de R$ 233,79 milhões.

Aplicando filtro para vendas online

No entanto, precisamos do total de vendas do canal online. Para isso, aplicaremos um filtro na medida de total de vendas. A função que aplica filtro em medidas é a CALCULATE. Vamos criar uma nova medida chamada Total Vendas Online.

Começamos definindo a nova medida:

Total Vendas Online =

Utilizamos a função CALCULATE para aplicar o filtro:

Total Vendas Online = 
CALCULATE(

Dentro da função CALCULATE, especificamos a expressão que queremos filtrar, que é o Total de Vendas:

Total Vendas Online = 
CALCULATE(
    [Total de Vendas],

E aplicamos o filtro para considerar apenas as vendas online:

Total Vendas Online = 
CALCULATE(
    [Total de Vendas],
    DimChannel[Channel] = "Online"
)

Se cometermos algum erro, como pressionar "ESC" sem querer, podemos revisar o processo: botão direito, nova medida, e inserimos novamente o CALCULATE do Total de Vendas, filtrando onde o canal for igual a "Online". Ao pressionar "Enter", observamos que o total é de 58,36 milhões. Isso significa que, dos 233 milhões totais faturados, pouco mais de 58 milhões foram faturados online.

Analisando vendas com descontos acima de 15%

A primeira resposta já foi entregue para o time da Zoop. No entanto, há outra questão interessante: o time da Zoop explicou que estão aplicando muitos descontos. O time de vendas, na ânsia de vender, está aplicando descontos excessivos. Eles querem saber quanto foi faturado em transações com descontos acima de 15%. Dos 233 milhões totais, será que mais da metade, menos da metade ou quase tudo foi com descontos acima de 15%? Descontos acima de 15% não são saudáveis para a companhia, então vamos descobrir isso.

Antes de prosseguir, precisamos deletar uma coluna vazia. Clicamos com o botão direito sobre ela e escolhemos o modelo. Dessa forma, a nossa tabela de medidas é promovida e fica sempre no topo, facilitando a entrega de projetos de forma mais simples, pois sabemos que a primeira tabela é sempre de medidas.

Criando medida para vendas com descontos acima de 15%

Clicamos com o botão direito e criamos uma nova medida, que chamaremos de Total Vendas Acima 15%. Utilizaremos a função CALCULATE. Queremos saber, do total de vendas, quais tiveram descontos acima de 15%.

Começamos definindo a nova medida:

Total Vendas Acima 15 pct =

Utilizamos a função CALCULATE para aplicar o filtro:

Total Vendas Acima 15 pct = 
CALCULATE(
    [Total de Vendas],

Dentro do filtro, utilizamos a função FILTER para pegar toda a tabela de vendas e manter apenas as linhas com percentual acima de 15%:

Total Vendas Acima 15 pct = 
CALCULATE(
    [Total de Vendas],
    FILTER(
        FactSales,
        FactSales[DiscountPct] > 0.15
    )
)

Assim, a função SUM poderá somar esses valores. A tabela a ser filtrada é a tabela de FactSales, e o filtro aplicado será DiscountPct > 0.15. Fechamos o filtro, fechamos o CALCULATE e pressionamos "Enter".

Dentro da função Total de Vendas, utilizamos a função SUM para somar a coluna Revenue, que representa o total de vendas. A função FILTER cria uma tabela em tempo de execução, apenas para ser utilizada dentro da função, sem criar uma tabela externa no modelo.

Filtramos a tabela de vendas para que restem apenas as linhas com desconto acima de 15%. Lembrando que, nas funções DAX, o separador decimal é ponto, não vírgula. Após ajustar o separador decimal para 0.15 e pressionar "Enter", descobrimos que mais de 85 milhões foram feitos com desconto acima de 15%. Dos 233 milhões, isso representa menos de 50%, o que pode ser considerado bom ou ruim. Nossa responsabilidade é entregar o que o time pediu; cabe a eles decidir se continuarão com essa política de desconto ou adotarão outras estratégias para reduzir o total de vendas com desconto acima de 15%.

Sobre o curso Power BI: análises avançadas com DAX

O curso Power BI: análises avançadas com DAX possui 106 minutos de vídeos, em um total de 63 atividades. Gostou? Conheça nossos outros cursos de Análise de Dados em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Escolha a duração do seu plano e aproveite até 44% OFF

Conheça os Planos para Empresas