Ir para conteúdo
  • 0

Remover Linhas desde que 2 colunas contenham valores em branco simultaneamente.


emanuelle.lacerda
Ir para solução Solucionado por Nelson Kobayashi ,

Pergunta

  • Alunos

Galera, bom dia !

Estou com uma dúvida no tratamento de dados e isso está deixando o power query muito lento, inviável de mexer.

Gostaria de saber se é possível excluir as linhas desde que duas colunas possuam simultaneamente valores em branco ou zero.

Ex:

Valor x    | Valor Y

1,00             0,00    Não Excluir

0,00             0,00    Excluir

0,00             1,00    Não Excluir

 

No excel, consigo filtrar as duas colunas selecionando valores 0,00 e excluir, mas como fazer isso no power query ?

 

Obrigada !

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

@emanuelle.lacerda, Pode ser que a coluna de exemplo fique lenta no seu projeto, dependendo da quantidade de dados, caso isso aconteça, tente dessa forma:

1. ) Selecione o Menu “Adicionar Coluna” > “Coluna Personalizada”:

image.png.9148e93b52e320addecace989b5ed02a.png

 

Irá abrir uma caixa de diálogo pra digitar uma fórmula, no meu modelo a fórmula ficou assim:

No seu modelo, só vai precisar substituir os nomes das duas colunas que no meu modelo é [VALOR1] e [VALOR2].

image.png.8ee958d4fbaa42bc3d53768d0bdf5709.png

 

Clique em OK e surgirá uma nova coluna na sula tabela, se deu tudo certo, as linhas os tem ZERO nas duas colunas serão identificadas como “ZERO” e o restante como “OUTRO”:

image.png.7f4c7b3201e759d92cccef867b123691.png

 

Agora é só filtrar as linhas identificadas como ZERO:

image.png.25769ce3e9cfaad6563e2350e9231542.png

 

Feito isso, é só deletar a coluna personalizada que foi criada, pois ela não será mais necessária.

image.png.f0681f0e42fb28ad9c1e0fc79933cdd7.png

 

É isso aí !

Espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Olá @emanuelle.lacerda!

Resolvi este problema da seguinte maneira:

Aqui eu criei uma tabela pra exemplificar, temos a coluna de Descrição e mais duas colunas de valores.

1. ) Primeiro, selecione as duas colunas de números, segurando a tecla CTRL do teclado.

2. ) Depois vá no menu “Adicionar Coluna” > “Coluna de Exemplos” > “Da Seleção” :

image.png.65333eda98060a389e2ab25b912ef533.png

 

Irá surgir uma nova coluna na sua tabela, pra você digitar exemplos do que deseja como resultado a partir das duas colunas selecionadas.

1. ) Selecione a primeira linha e digite os valores da primeira e da segunda coluna separados por um traço, neste caso ficará assim (10-50) :

image.png.c143ed6c9d4887fa3a54ce7359c34e54.png

 

Agora selecione a segunda linha e digite os valores da primeira e da segunda coluna separados por um traço, neste caso ficará assim :

image.png.4f56550085ac3a0a9f71e428d3f3195b.png

Repare que a partir a terceira linha o Power Query entendeu o que eu queria e replicou o mesmo formato para as outras linhas:

No meu caso, o Power Query já entendeu que desejo unir linha a linha os valores das duas colunas e separar com um traço, e preencheu automaticamente o resto. Se isso não acontecer pra você, continue tentando na terceira ou quarta linha ... Se ainda assim não der certo, verifique os valores de cada célula pra digitar direitinho o valor exato senão o Power Query não vai entender o que queremos fazer. Nem que seja copiar e colar os valores para um bloco de notas e colar de volta na coluna de exemplos.

Se deu certo e o Power Query preencheu certinho, clique em OK, logo acima dos valores que você digitou.

 

Agora vamos filtrar as linhas indesejadas, desmarcando no filtro as linhas que resultam em 0-0:

image.thumb.png.4eaacab3e80288a82fbeb2a5ea6d9be4.png

 

Prontinho! Já removemos as linhas indesejadas. Agora é só remover a coluna de exemplo que foi criada, pois ela não é mais necessária.

image.thumb.png.8b491d4c8508fd5517a01cece3c0d20c.png

 

É isso aí, espero ter ajudado.

Deve ter um jeito mais técnico usando a Linguagem M de forma mais econômica, mas desse jeito deve resolver pra você.

Talvez nosso colega @Vitor Peralva  tenha uma solução melhor em Linguagem M.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Olá, @emanuelle.lacerda!

 

A solução do @Nelson Kobayashi é excelente e super didática.

Uma alternativa a solução apresentada seria:

 

Simulei a seguinte tabela:
 

image.png.0db82ce79dab360b88eb61dfd5ecdef1.png

 

Pare este caso, queremos eliminar duas linhas, a primeira e a última, ambas, simultaneamente, com zero nas duas colunas.
 

Carregando no Power Query, se filtrarmos eliminando o zero da primeira coluna teríamos a seguinte fórmula M:


image.png.4e2486157884a86ed08fec78ba1fb004.png
 

O que queremos é que ela não seja zero na primeira e nem na segunda, então, podemos colocar um "not" do lado de fora.


image.png.b8240e560dace78df85c2d2b99103e0c.png
 

Como resultado obtemos:

 

image.png.bc8706714b1e884420fd3f3a212cbf9c.png

 

A solução envolve um pouco de raciocínio lógico e neste ponto que a solução anteriormente apresentada tem o mérito de você verificar de forma mais fácil se o filtro que se pretende aplicar funciona adequadamente ou não.
Existem vários caminhos para uma mesma solução.
Veja aquele que você se sente mais segura e siga por ele.

  • Like 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
6 horas atrás, Vitor Peralva disse:

Pare este caso, queremos eliminar duas linhas, a primeira e a última, ambas, simultaneamente, com zero nas duas colunas.
 

Carregando no Power Query, se filtrarmos eliminando o zero da primeira coluna teríamos a seguinte fórmula M:


image.png.4e2486157884a86ed08fec78ba1fb004.png
 

O que queremos é que ela não seja zero na primeira e nem na segunda, então, podemos colocar um "not" do lado de fora.


image.png.b8240e560dace78df85c2d2b99103e0c.png
 

Olá @Vitor Peralva!

Como se faz a inserção dessas fórmulas M dentro das etapas de construção da ETL ?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
50 minutos atrás, Nelson Kobayashi disse:

Olá @Vitor Peralva!

Como se faz a inserção dessas fórmulas M dentro das etapas de construção da ETL ?

Boa Noite, @Nelson Kobayashi!

Não sei se entendi a sua pergunta, mas o que normalmente eu faço é o seguinte.

Vejo o que eu quero fazer, no caso filtrar linha por um critério.

Depois uso a interface do Power Query para construir parte da fórmula para mim.

Neste exemplo acima, ao filtrar por 0 a primeira coluna, o Power Query já colocou o "= Table.SelectRows(#"Tipo Alterado", each ([A] <> 0))

Aí analiso o que preciso modificar para obter o que quero., no caso o each pode ser traduzido como "para cada linha".

Então, sei que preciso substituir o "[A] <> 0" pelo que vá me trazer o que quero.

Então, você pode entrar no editor avançado ou na própria barra de fórmulas e alterar e ir verificando o resultado.

Se não houver algo na interface, vou na documentação e procuro por palavras-chaves.

Outra boa fonte é você pode pesquisar no Google, preferencialmente em Inglês, pelo que quer fazer.

E testar, vou testando para entender a lógica ou como modificar ou agrupar funções.

Não dá para prever todos os problemas, mas com uma boa lógica, se consegue produzir uma boa solução.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
8 horas atrás, Vitor Peralva disse:

Neste exemplo acima, ao filtrar por 0 a primeira coluna, o Power Query já colocou o "= Table.SelectRows(#"Tipo Alterado", each ([A] <> 0))

Aí analiso o que preciso modificar para obter o que quero., no caso o each pode ser traduzido como "para cada linha".

Então, sei que preciso substituir o "[A] <> 0" pelo que vá me trazer o que quero.

Então, você pode entrar no editor avançado ou na própria barra de fórmulas e alterar e ir verificando o resultado.

Nossa, realmente é bem complexo. 

Ainda tenho dificuldade de entender esses códigos de programação no formato do Editor Avançado ... Quando dá pra fazer em etapas, usando coluna personalizada ou função personalizada, ainda é uma interface mais amigável...

Tenho um modelo que eu estava tentado fazer ETL no Power Query para converter uma coluna usando a função TextEncoding.Utf8 mas não consegui de jeito nenhum ...

image.png.18f6cdcbffbe4b083bfda09cb36a609b.png

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...