Blog

Postado em em 3 de setembro de 2022

Funções de Filtro no DAX Power BI [Exemplo Prático + Vídeo]

A função FILTER do Power BI é muito importante para ajudar na seleção de informações e em cálculos mais elaborados envolvendo tabelas.

Assim, é a própria essência no controle de dados em uma plataforma de análise: permitir visualizar melhor e fazer gráficos mais precisos.

Neste conteúdo, falaremos sobre as funções de filtro e sobre a função FILTER.

Para baixar a planilha utilizada nesta publicação, clique aqui!

Quais são as funções de filtro e valor no DAX?

As funções de filtro e valor no DAX são cruciais para ajudar a selecionar informações e a manipular dados de acordo com determinados critérios.

São úteis para organizar os dados e até para facilitar os cálculos nessas condições especiais. Dividem tabelas em subconjuntos, o que facilita no controle.

Essa filtragem é boa para visualização dos dados, uma visualização mais prática e segmentada, bem como para gerenciamento ativo e cálculos.

Dentre as funções de filtro, temos a função FILTER do Power BI, que tem como intuito facilitar a filtragem sob condições específicas. É muito útil em casos de filtragens mais complexas, que envolvem expressões aninhadas e associadas.

A questão é que as outras funções de filtro trabalham com a FILTER. Você pode ter em um comando várias delas operando em conjunto.

É importante destacar que a função FILTER do Power BI, especialmente, não trabalha sozinha. Por isso, para dominar o seu uso, é importante conhecer outras.

O que é é o DAX Power BI?

O DAX Power BI nada mais é do que a coleção de funções, operadores e fórmulas do Power BI. A função FILTER é uma fórmula do Power BI que permite com que o usuário obtenha determinadas informações como se estivesse filtrando uma tabela, para mostrar somente aquilo que deseja.

Quando utilizar o DAX Power BI?

Essas fórmula serão utilizadas sempre que o usuário precisar efetuar um cálculo que envolva dados específicos, neste caso ele poderá informar quais são esses dados para que o Power BI consiga efetuar o cálculo sem levar em conta os outros dados da tabela.

Quais são as funções de filtro e valor no DAX?

As funções de filtro e valor no DAX são cruciais para ajudar a selecionar informações e a manipular dados de acordo com determinados critérios.

São úteis para organizar os dados e até para facilitar os cálculos nessas condições especiais. Dividem tabelas em subconjuntos, o que facilita no controle.

Essa filtragem é boa para visualização dos dados, uma visualização mais prática e segmentada, bem como para gerenciamento ativo e cálculos.

Dentre as funções de filtro, temos a função FILTER do Power BI, que tem como intuito facilitar a filtragem sob condições específicas. É muito útil em casos de filtragens mais complexas, que envolvem expressões aninhadas e associadas.

A questão é que as outras funções de filtro trabalham com a FILTER. Você pode ter em um comando várias delas operando em conjunto.

É importante destacar que a função FILTER do Power BI, especialmente, não trabalha sozinha. Por isso, para dominar o seu uso, é importante conhecer outras.

DAX Filter Function Syntax

Eis então a função FILTER do Power BI e sua sintaxe:

FILTER ( <Table>, <FilterExpression> )

Quais são os usos das funções de filtro?

Existem vários usos interessantes para as chamadas funções de filtro do Power BI.

Uma delas é reduzir o número de colunas/linhas em uma tabela. Para trabalhar com uma tabela menor, mais específica, que facilite a visualização e a gestão dos dados. Até mesmo para facilitar a geração de gráficos que são importados para relatórios.

Nesse caso, algum filtro específico, com algum critério, pode ser usado para simplificar o modelo analisado.

Outro uso é para esconder colunas e linhas irrelevantes para um determinado contexto.

Quem trabalha com Power BI lida com muitos dados e precisa, portanto, entender a importância de fazer filtragens para verificar alguns dados em específico, somente o necessário para aquele objetivo.

As funções de filtro, em consonância com a função FILTER do Power BI, são úteis também para cálculos e operações aritméticas nos dados, em campos determinados e específicos.

Assim, é possível calcular nos campos corretos, evitando certas linhas.

Além disso, as funções também ajudam a estabelecer contextos e a estudar os dados em determinadas situações.

Outro uso relevante é para cálculos dinâmicos.

Lista das funções de filtro no DAX

Agora, vamos falar das funções de filtro famosas no DAX. Vale lembrar que elas são usadas com a função FILTER do Power BI, pois a FILTER depende delas e não é usada sozinha.

  • ALL: retorna uma tabela sem filtros, ou seja, desativando os filtros que já foram definidos;
  • ALLCROSSFILTERED: remova os filtros aplicados;
  • ALLEXCEPT: tira os filtros de contexto, exceto os aplicados a uma tabela;
  • ALLNOBLANKROW: retorna as linhas de uma tabela, removendo apenas as linhas em braco e ignorando possíveis filtros contextuais;
  • ALLSELECTED: apenas ignora os filtros de contexto em uma dada linha;
  • CALCULATE: faz cálculos com base em determinados filtros;
  • CALCULATETABLE: faz cálculos em tabela com base nos filtros;
  • EARLIER: pega o valor de uma coluna específica em uma operação que não está considerando essa coluna no momento;
  • FILTER: faz uma filtragem e retorna uma tabela que atende a determinados critérios;
  • KEEPFILTERS: permite alterar os filtros para manipulação em outras funções;
  • LOOKUPVALUE: pega o valor que atende a fatores definidos por critérios de pesquisa;
  • REMOVEFILTERS: remove todos os filtros em uma dada seleção.

Exemplo prático de uso da função FILTER?

Vamos a um exemplo prático de como funciona a função FILTER do Power BI.

O primeiro passo antes da utilização do filtro é fazer uma análise rápida dos dados que temos para entendê-los.

Banco de dados

É possível observar que temos uma lista de funcionários com as informações de cada um deles, como a data de contratação, idade, cargo, salário e área de atuação.

Para iniciar vamos querer descobrir quantos funcionários ganham acima da média salarial e para isso teremos que primeiramente descobrir quando é esse valor de média salarial.

Para isso vamos criar uma Nova Medida, para isso basta clicar com o botão direito do mouse em qualquer lugar da tabela e selecionar essa opção.

Medida para Média Salarial

Medida para Média Salarial

Para a média vamos utilizar a fórmula AVERAGE (média em inglês) e dentro da fórmula será colocada a coluna na qual essa média será obtida.

Feito isso a medida será criada, mas qualquer medida criada dentro do Power BI não aparece diretamente na tabela, será necessário criar um cartão (ou outro gráfico) para poder visualizar esse dado. O mais comum é a criação de um cartão, pois ele permite a visualização de apenas uma única informação.

Média Salarial

Média Salarial

Para a criação desse cartão basta selecionar essa opção na parte de Visualizações da guia Relatório e em seguida arrastar a medida de Média Salarial que acabamos de criar para o campo do Cartão.

Para evitar que o número fique arredondado e seja possível observá-lo por completo basta ir até a parte de Formato, em seguida em Rótulo de dados e alterar a parte de Exibir unidades para Nenhum.

Alterando unidades - DAX Power BI

Alterando unidades

Após as formatações teremos o valor da média salarial e com isso podemos então, calcular a quantidade de funcionário que recebem acima da média. Vamos primeiro ver a forma mais simples de fazer o cálculo e em seguida vamos ver a forma “correta” de fazer.

Como todo cálculo que fazemos começa com uma medida vamos novamente criar outra medida para esse cálculo.

Quantidade de funcionários que recebem acima da média

Quantidade de funcionários que recebem acima da média

Com essa fórmula será possível fazer um cálculo (CALCULATE) com uma expressão que nesse caso é a fórmula COUNT (que serve para contar). Neste caso logo após a fórmula COUNT vamos indicar ao programa qual o critério dessa conta (que é o segundo argumento da fórmula CALCULATE). O critério é que queremos contar apenas os funcionários que possuem salário maior ou igual a R$7.487,55.

Feito isso já podemos colocar essa medida dentro de outro cartão para verificar o resultado.

Resultado da medida

Resultado da medida

É possível observar que temos 561 funcionários que recebem acima da média de um total de 1.593 funcionários.

Como a média que colocamos dentro da medida é fixa ela não será alterada caso o número de funcionários seja alterado ou até mesmo o valor de salário seja alterado, para isso precisamos de uma forma automática de atualizar esse valor.

Para utilizar filtros mais complexo ao invés de uma simples comparação como foi feita é que vamos utilizar a fórmula FILTER. Então vamos refazer a fórmula e escrever cada parte em uma linha para não ficar bagunçado e facilitar o entendimento.

Nova fórmula para o cálculo de funcionários acima da média - DAX Power BI

Nova fórmula para o cálculo de funcionários acima da média

Nesta fórmula estamos acrescentando a fórmula FILTER onde tínhamos a comparação simples com o salário. Para essa fórmula temos 2 argumentos, o primeiro é a tabela em que vamos obter os dados, como só temos uma será ela mesma. O segundo argumento é a expressão, aqui novamente vamos fazer a comparação, no entanto, aqui será possível utilizar o valor da medida de Média Salarial.

Esse procedimento de utilizar uma medida já existente não funciona no caso anterior caso o usuário substitua o número pela medida, por isso a necessidade de utilizar o FILTER.

OBS: Para deixar a fórmula mais organizada, escrevendo cada parte em uma linha basta pressionar SHIFT + ENTER para pular a linha e continuar o código na linha seguinte.

Resultado da nova fórmula (errado)

Resultado da nova fórmula (errado)

Neste caso é possível observar que o resultado ficou diferente do anterior, pois tínhamos apenas 561 funcionário com o salário acima da média e agora temos que todos os funcionários ganham acima da média.

Essa conta está errada e agora vamos entender o motivo. O problema está justamente na Média Salarial que estamos utilizando, pois tínhamos no início que a média era de R$7.487,55.

Ao utilizar a fórmula FILTER ele acaba olhando linha por linha de forma individual, ou seja, na hora que esse fórmula estiver calculando a média ela vai olha para 1 linha de cada vez e vai verificar se o valor do salário é maior ou igual a média, mas como só temos um único valor a média dele é ele mesmo.

Então neste caso a fórmula FILTER vai dizer que todos os valores que temos são maiores ou iguais a média, pois essa média está sendo calculada para cada linha individualmente e não levando em conta todos os funcionários.

Para resolver esse problema vamos criar uma Média Salarial Absoluta para que possamos obter o valor total da média sem que ocorra esse problema do filtro de efetuar a média somente do funcionário que está sendo analisado no momento.

Fórmula "correta" para o cálculo da média salarial - DAX Power BI

Fórmula “correta” para o cálculo da média salarial

Com essa fórmula será possível calcular a média salarial que já temos, mas com a fórmula ALL vamos ignorar todos os filtros que estejam sendo aplicados, ou seja, vamos pegar todos os funcionários independente do filtro. Desta forma será possível obter a média correta de todos os funcionários sem obter de um por um.

Resultado da Média Salarial (correto)

Resultado da Média Salarial (correto)

Desta forma foi possível obter o mesmo valor de média, no entanto ignorando os filtros para que não ocorra variações na hora do cálculo e levando em conta todos os funcionários para esse cálculo.

Fórmula correta para o cálculo da quantidade de funcionários acima da média

Fórmula correta para o cálculo da quantidade de funcionários acima da média

Feito isso basta substituir a nova medida na fórmula de quantidade de funcionários acima da média para obtermos os valores corretos.

Resultado correto da quantidade de funcionários acima da média - DAX Power BI

Resultado correto da quantidade de funcionários acima da média

Nessa aula foi possível aprender como utilizar a fórmula FILTER e verificar que essa fórmula faz as análises linha por linha ao invés de considerar toda a coluna, portanto é necessário tomar cuidado ao utilizar essa fórmula para não obter dados incorretos.

Você está procurando por um curso completo de Power BI? Clique para saber mais! Aqui na Hashtag temos as melhores opções de curso pra você, inclusive cursos presenciais de Excel, Power BI e VBA!


Quer aprender mais sobre Power BI com um minicurso gratuito?


Quer sair do zero no Power BI e virar uma referência na sua empresa? Inscreva-se agora mesmo no Power BI Impressionador