Compartilhar via


Agrupar ou resumir linhas

No Power Query, você pode agrupar valores em várias linhas em um único valor agrupando as linhas de acordo com os valores em uma ou mais colunas. Você pode escolher entre dois tipos de operações de agrupamento:

  • Agrupamentos de colunas.

  • Agrupamentos de linhas.

Para este tutorial, você está usando a tabela de exemplo a seguir.

Tabela inicial de exemplo.

Captura de tela de uma tabela com colunas mostrando Ano (2020), País (EUA, Panamá ou Canadá), Produto (Camisa ou Shorts), Canal de Vendas (Online ou Revendedor) e Unidades (vários valores de 55 a 7500)

Onde localizar o botão Agrupar por

Você pode encontrar o botão Agrupar por três locais:

  • Na guia Página Inicial, no grupo Transformar.

    Captura de tela da faixa de opções do Power Query com o Grupo por opção enfatizada na guia Página Inicial.

  • Na guia Transformar, no grupo Tabela.

    Captura de tela da faixa de opções do Power Query com a opção Agrupar por opção enfatizada na guia Transformar.

  • No menu de atalho, quando você clica com o botão direito do mouse para selecionar colunas.

    Captura de tela de uma tabela com a opção Agrupar por opção enfatizada no menu de atalho.

Usar uma função de agregação para agrupar por uma ou mais colunas

Neste exemplo, sua meta é resumir o total de unidades vendidas no país e no nível do canal de vendas. Use as colunas País e Canal de Vendas para realizar a operação de agrupamento.

  1. Selecione Agrupar por na guia Página Inicial.
  2. Selecione a opção Avançado , para que você possa selecionar várias colunas para agrupar.
  3. Selecione a coluna País.
  4. Selecione Adicionar agrupamento.
  5. Selecione a coluna Canal de Vendas .
  6. Em Novo nome da coluna, insira Total de unidades, em Operação, selecione Soma e, em Coluna, selecione Unidades.
  7. Selecione OK

Captura de tela da caixa de diálogo Agrupar por com as colunas agregadas preenchidas.

Esta operação fornece a tabela a seguir.

Captura de tela da tabela de saída de exemplo com as colunas País, Canal de Vendas e Total de unidades.

Operações disponíveis

Com o recurso Agrupar por recurso, as operações disponíveis podem ser categorizadas de duas maneiras:

  • Operação ao nível da linha
  • Operação de nível de coluna

A tabela a seguir descreve cada uma dessas operações.

Nome da Operação Categoria Description
Sum Operação de coluna Soma todos os valores de uma coluna
média de Operação de coluna Calcula o valor médio de uma coluna
Median Operação de coluna Calcula a mediana de uma coluna
Min Operação de coluna Calcula o valor mínimo de uma coluna
Máximo Operação de coluna Calcula o valor máximo de uma coluna
Percentile Operação de coluna Calcula o percentil, usando um valor de entrada de 0 a 100, de uma coluna
Contar valores distintos Operação de coluna Calcula o número de valores distintos de uma coluna
Contar linhas Operação de linha Calcula o número total de linhas de um determinado grupo
Contar linhas distintas Operação de linha Calcula o número de linhas distintas de um determinado grupo
Todas as linhas Operação de linha Exibe todas as linhas agrupadas em um valor de tabela sem agregações

Observação

Os Contar valores distintos e Percentil só estão disponíveis no Power Query Online.

Executar uma operação para agrupar por uma ou mais colunas

A partir do exemplo original, neste exemplo, você cria uma coluna que contém o total de unidades e duas outras colunas que fornecem o nome e as unidades vendidas para o produto de melhor desempenho, resumidas no nível do país e do canal de vendas.

Captura de tela da tabela de saída de exemplo com operações.

  1. Use as seguintes colunas como colunas Agrupar por:

    • País
    • Canal de vendas
  2. Crie duas novas colunas seguindo estas etapas:

    1. Agregar a coluna Unidades usando a operação Soma . Nomeie esta coluna Total de unidades.
    2. Adicione uma nova coluna Produtos usando a operação Todas as linhas .

    Captura de tela da caixa de diálogo Agrupar por com uma coluna não agregada.

Após a conclusão dessa operação, observe como a coluna Produtos tem valores [Tabela] dentro de cada célula. Cada valor [Tabela] contém todas as linhas que foram agrupadas pelas colunas País e Canal de Vendas da tabela original. Você pode selecionar o espaço em branco dentro da célula para ver uma visualização do conteúdo da tabela na parte inferior da caixa de diálogo.

Captura de tela do painel de visualização de detalhes da tabela.

Observação

O painel de visualização de detalhes pode não mostrar todas as linhas que foram usadas para a operação de agrupamento. Você pode selecionar o valor [Tabela] para ver todas as linhas pertencentes à operação de agrupamento correspondente.

Em seguida, você precisa extrair a linha que tem o valor mais alto na coluna Unidades das tabelas localizadas dentro da nova coluna Produtos e chamar essa nova coluna Produto Top Performer.

Extrair as informações do produto de melhor desempenho

Com a nova coluna Produtos com valores [Tabela ], você cria uma nova coluna personalizada acessando a guia Adicionar Coluna na faixa de opções e selecionando a coluna Personalizada do grupo Geral .

Captura de tela da faixa de opções do Power Query com a opção Coluna personalizada destacada na guia Adicionar coluna.

Nomeie a nova coluna Produto de melhor desempenho. Insira a fórmula Table.Max([Products], "Units" ) em Fórmula de coluna personalizada.

Captura de tela da caixa de diálogo Coluna Personalizada com a fórmula de Table.Max inserida.

O resultado dessa fórmula cria uma nova coluna com valores [Record ]. Esses valores de registro são essencialmente uma tabela com apenas uma linha. Esses registros contêm a linha com o valor máximo para a coluna Unidades de cada valor [Tabela] na coluna Produtos .

Captura de tela do resultado da fórmula de coluna personalizada com Table.Max.

Com esta nova coluna Top Performer que contém valores [Record], você pode selecionar o ícone de expandir, selecionar os campos Produto e Unidades, e, em seguida, selecionar OK.

Captura de tela da operação de expansão para o valor do registro na coluna de produto de melhor desempenho.

Depois de remover a coluna Produtos e definir os tipos de dados para ambas as colunas expandidas recentemente, o resultado será semelhante à imagem a seguir.

Captura de tela da tabela final com todas as transformações.

Agrupamento difuso

Observação

O recurso a seguir só está disponível no Power Query Online.

Para demonstrar como fazer "agrupamento difuso", considere a tabela de exemplo mostrada na imagem a seguir.

Captura de tela de uma tabela com nove linhas de entradas que contêm várias ortografias e maiúsculas do nome Miguel e William.

O objetivo do agrupamento difuso é fazer uma operação de agrupamento por que usa um algoritmo de correspondência aproximada para strings de texto. O Power Query usa o algoritmo de similaridade Jaccard para medir a similaridade entre pares de instâncias. Em seguida, aplica o agrupamento hierárquico aglomerativo para agrupar instâncias juntas. A imagem a seguir mostra a saída esperada, em que a tabela é agrupada pela coluna Pessoa .

Captura de tela de uma tabela mostrando entradas para Pessoa como Miguel e Mike e Frequência como 3 e 2, respectivamente.

Para fazer o agrupamento difuso, execute as mesmas etapas descritas anteriormente neste artigo. A única diferença é que, desta vez, na caixa de diálogo Agrupar por , marque a caixa de seleção Usar agrupamento difuso .

Captura de tela da caixa de seleção Fuzzy grouping enfatizada na caixa de diálogo Agrupar por.

Para cada grupo de linhas, o Power Query escolhe a instância mais frequente como a instância "canônica". Se várias instâncias ocorrerem com a mesma frequência, o Power Query escolherá a primeira. Depois de selecionar OK na caixa de diálogo Grupo por , você obtém o resultado esperado.

Captura de tela da tabela final de exemplo de agrupamento difuso, sem tabela de transformação.

No entanto, você tem mais controle sobre a operação de agrupamento difuso expandindo as opções de grupo Difuso.

Captura de tela da caixa de diálogo Agrupar por com as opções de agrupamento fuzzy destacadas.

As seguintes opções estão disponíveis para agrupamento difuso:

  • Limite de similaridade (opcional): essa opção indica o quão semelhantes dois valores devem ser agrupados. A configuração mínima de zero (0) faz com que todos os valores sejam agrupados. A configuração máxima de 1 permite apenas que os valores que correspondem exatamente sejam agrupados. O padrão é 0,8.
  • Ignorar maiúsculas e minúsculas: quando as cadeias de caracteres de texto são comparadas, o caso é ignorado. Essa opção está habilitada por padrão.
  • Agrupar combinando partes de texto: o algoritmo tenta combinar partes de texto (como combinar Micro e soft na Microsoft) para agrupar valores.
  • Mostrar pontuações de similaridade: mostrar pontuações de similaridade entre os valores de entrada e os valores representativos computados após o agrupamento difuso. Requer a adição de uma operação como Todas as linhas para mostrar essas informações em um nível linha por linha.
  • Tabela de transformação (opcional): você pode selecionar uma tabela de transformação que mapeia valores (como mapeamento do MSFT para a Microsoft) para agrupá-los.

Para este exemplo, uma tabela de transformação é usada para demonstrar como os valores podem ser mapeados. A tabela de transformação tem duas colunas:

  • De: A cadeia de caracteres de texto a ser pesquisada em sua tabela.
  • Para: a cadeia de caracteres de texto a ser usada para substituir a cadeia de caracteres de texto na coluna De .

A imagem a seguir mostra a tabela de transformação usada neste exemplo.

Captura de tela da tabela mostrando De valores de Mike e William, e Para valores de Miguel e Bill.

Importante

É importante que a tabela de transformação tenha as mesmas colunas e nomes de colunas, conforme mostrado na imagem anterior (elas precisam ser rotuladas como "De" e "Para"). Caso contrário, o Power Query não reconhecerá a tabela como uma tabela de transformação.

Retorne à caixa de diálogo Grupo por, expanda as opções de agrupamento Fuzzy, altere a operação de Linhas de Contagem para Todas as linhas, habilite a opção Mostrar pontuações de similaridade e selecione o menu suspenso da tabela de transformação.

Captura de tela do menu suspenso da tabela de transformação de exemplo de agrupamento difuso.

Depois de selecionar a tabela de transformação, selecione OK. O resultado dessa operação fornece as seguintes informações:

Captura de tela da tabela final de exemplo de agrupamento difuso com a tabela de transformação.

Neste exemplo, a opção Ignorar maiúsculas/minúsculas foi habilitada, de modo que os valores na coluna De da tabela de transformação são usados para procurar a cadeia de caracteres de texto, não levando em consideração se as letras são maiúsculas ou minúsculas. Essa operação de transformação ocorre primeiro e, em seguida, a operação de agrupamento difuso é executada.

A pontuação de similaridade também é mostrada no valor da tabela ao lado da coluna de pessoa, que reflete exatamente como os valores foram agrupados e suas respectivas pontuações de similaridade. Você pode expandir essa coluna se necessário ou usar os valores das novas colunas frequency para outros tipos de transformações.

Observação

Ao agrupar por várias colunas, a tabela de transformação executará a operação de substituição em todas as colunas se substituir o valor aumentar a pontuação de similaridade.

Para obter mais informações sobre como as tabelas de transformação funcionam, acesse os preceitos da tabela De transformação.