Arquivo para Tag: Criar coluna condicional com Power Query

Você vai descobrir que é possível fazer praticamente tudo utilizando esta forma de adicionar colunas. Leia este artigo e aprenda a criar coluna condicional no Power BI através do Editor de Consultas. Este artigo também serve para quem quer fazer o mesmo no excel através do Power Query.

Se quer saber mais sobre o Power Query e a Linguagem M (a linguagem do Power Query) acesse este artigo: A LINGUAGEM DA POWER QUERY NO POWER BI.

Em muitos casos será necessário colocar expressões condicionais no seu modelo. A função IF, que faz isso na linguagem DAX, é uma função que considera linha a linha. Dependendo do tamanho do seu modelo, isso pode ser um problema. Pode causar muita utilização de memória e com isso deixar o processamento do relatório lento. Nestes casos é melhor fazer uma coluna condicional no Power BI usando o Power Query.

A opção de adicionar coluna condicional à primeira vista pode parecer um pouco limitada, mas mostraremos abaixo que é perfeitamente utilizável em cenários complexos também. Será útil em vários casos.

Para seguir todas as etapas e criar coluna condicional no Power BI com todas as possibilidades, faça o download da base que utilizamos como exemplo. Com isso você pode seguir as demonstrações abaixo da mesma forma como apresentamos a seguir.

 

Adicionando coluna condicional com Power Query

Na imagem abaixo temos a coluna com o número de filhos (Nro_Filhos). O que queremos neste primeiro exemplo é classificar as famílias, ou seja, dizer o tamanho da família conforme a quantidade de filhos. Vamos classificar como “Família Pequena” de 0 a 1 filho, como “Família Média” de 2 a 3 filhos e “Família Grande” acima de 3 filhos.

Tabela Clientes uaismart

Importe esta tabela para o Power BI ou Power Query do Excel através do Obter Dados. Seguiremos a partir de agora pelo Power BI, mas o processo no Power Query do excel é o mesmo.

Após os dados extraídos da base que disponibilizamos entre no Editor de Consultas. Então vá até a faixa de opções Adicionar Coluna e depois Coluna Condicional.

Adicionar coluna condicional no power bi

Após clicar em coluna condicional aparecerá a tela abaixo.

Criar coluna condicional no Power BI 2

Nesta tela, inicialmente, terá apenas uma linha para a regra, então clique em Adicionar Regra. No campo “Nome da nova coluna” coloque o nome para esta coluna. Nas linhas de regras escolha a coluna em “Nome da Coluna”, no caso será a coluna “Nro_Filhos”. Defina o restante das regras, Operador, Valor, Saída. Por fim o “Caso Contrário”, tudo conforme feito na imagem acima. Terminando tudo, clique em OK.

Vemos na criação da coluna condicional (figura acima) a seguinte lógica. Se “Nro_Filhos” for menor ou igual a 1 então “Pequena”. Senão se “Nro_Filhos” for menor ou igual a 1 então “Média”, caso contrário (se não atender nenhuma das regras) “Grande”.

Na hora de definir as regras e inserir os parâmetros enquanto cria a coluna condicional no Power BI, é possível fazer algumas escolhas. Além de Adicionar Regra conforme falado acima pode-se também escolher entre valores estáticos (Digite o valor), valores de uma coluna (Selecionar uma coluna) ou parâmetros previamente definidos. Veja isso na figura abaixo.

Adicionar Coluna Condicional Opções

É possível também excluir ou mudar a ordem das condições para cima ou para baixo.  Veja onde na figura abaixo.

Adicionar Coluna Condicional Mover

 

Mas como adicionar os operadores AND e OR?

Vimos até agora que criar uma coluna condicional com Power Query é bem simples. Mas você deve estar se perguntando como incluir as lógicas do AND ou OR nas condicionais? Muitas vezes a condições devem levar em conta mais de uma coluna ou mais e de uma situação. Nesses casos é necessário utilizar os operadores lógicos AND e OR.

No processo de criar uma coluna condicional no Power BI (excel também), temos três formas para considerar estes operadores.

Para demonstrar estas três formas vamos criar uma condicional que retorne um ”Título” baseado nas colunas “Estado Civil” e “Gênero”. Já existe esta coluna “Título”, mas está errada e faltando informações. No quadro abaixo está a lógica que iremos implementar.

Tabela com condições And e Or Power Query

Na base de dados não há o gênero “Outro”, mas vamos utilizá-lo na lógica. Com isso, se você precisar de algo neste sentido já está contemplado na explicação.

1ª Forma: Ordem das Condições

A ordem das condições tem impacto no resultado. Tenha isso em mente. É por isso que há a possibilidade de mover as condições para cima ou para baixo na lista.

Observe que numa operação condicional há três partes:

Se (Lógica) é verdadeiro, então (faça isso) caso contrário (faça aquilo)

Então pense o seguinte: a execução somente vai para a próxima condição, SOMENTE SE não atender a condição anterior. Seguindo esta forma de pensar, abaixo está a solução para a primeira forma.

Condições And e Or Ordem

A primeira e segunda condições são bem simples, apenas precisam levar em conta a coluna “Gênero”, pois não há necessidade de checar nada na coluna “Estado Civil” para chegar na conclusão. O grande truque está na terceira condição. Nesta há necessidade de checar o “Estado Civil”. Mas somente chegará nesta terceira regra se as duas primeiras não forem verdadeiras. Isso implica que somente chegará lá se o Gênero não for masculino ou outro.

A terceira condição será acionada somente se for feminino. Nesse momento é que precisará checar a coluna “Estado Civil”, se solteiro será Srta., caso contrário Sra.

Sabemos então como funciona o Se, o Senão se e o Caso contrário. Entendemos também que colocar as condições na ordem correta interferirá no resultado da condicional. Praticamente dá para usar esta forma em todos os casos. Basta mudar a forma de pensar, colocar as condições numa ordem lógica considerando o alcance de cada regra.

2ª Forma: Concatenando as colunas

Esta é uma forma mais simples para criar uma coluna condicional no Power BI considerando mais argumentos. Provavelmente é a mais usada neste tipo de caso. Nesta situação criamos uma coluna mesclando as colunas “Gênero” e “Estado Civil”. Abaixo o procedimento para adicionar coluna mesclando as duas colunas.

Condições And e Or concatenando

Assim utiliza esta nova coluna para definir as condições conforme abaixo.

Condições And e Or Concatenado

Nesta forma colocamos um passo a mais nas etapas do Power Query, que é a criação de uma nova coluna mesclada. Preferimos mais a primeira forma por utilizar mais a visão lógica e não ter que colocar uma etapa a mais. Mas por ser mais fácil pode ser a preferência da maioria.

 

3ª Forma: Utilizando a Linguagem M

Se você já tem mais familiaridade com o Power Query talvez já entenda um pouco mais das funções e fórmulas utilizando a Linguagem M. Essa é a linguagem do Power Query. As possibilidades utilizando esta forma de fazer serão bem maiores.

Para utilizar os operadores AND e OR com M basta clicar em Coluna Personalizada, na faixa de opções Adicionar Coluna. Feito isso escreva as linhas abaixo e teremos os mesmos resultados que as 2 formas anteriores, mas agora numa pegada de desenvolvedor e utilizando códigos.

Coluna Condicional no Power BI com M

Veja que utilizamos AND no exemplo, mas é possível utilizar o OR também. A Linguagem M é sensível a letras maiúsculas e minúsculas. Assim o AND ou OR devem ser escritos em minúsculos.

 

Pronto para criar coluna condicional no Power BI?

Criar coluna condicional no Power BI é uma ótima maneira implementar uma lógica linha a linha, mas sem o peso todo que uma coluna calculada ou uma medida que utiliza IF traz para o modelo.

Pela interface gráfica do Power Query dá para implementar praticamente todas as lógicas possíveis. Em algumas lógicas você terá que alterar a ordem de pensamento. Mas é só tentar pensar de uma forma diferente organizando a ordem das regras para chegar no resultado. Você pode também criar as lógicas utilizando a Linguagem M. Fica conforme for mais simples ou melhor para você.

Compartilhe este conteúdo nas suas redes sociais (utilize os botões abaixo) e ajude seus colegas a compreender melhor sobre o assunto. Ajude-nos também a espalhar bons conteúdos sobre o Power BI.

Tem dúvidas? Nos pergunte! Utilize a sessão de comentários deste artigo logo abaixo.

Até a próxima!

 

Referência: RADACAD