Database
 sql >> Base de Dados >  >> RDS >> Database

Pivot, unpivoting e divisão de colunas no Power BI Query Editor


Para referência, o Power BI é um software de visualização e análise de dados desenvolvido pela Microsoft. O Power BI pode ser usado para visualização de dados estática e interativa. Antes de criar visualizações reais com o Power BI, você pode realizar o pré-processamento de dados usando o editor de consultas do Power BI.

Com o editor de consultas, você pode realizar várias tarefas de transformação de dados, como alterar os tipos de coluna, manipular valores ausentes, excluir linhas e colunas, dinamizar e desarticular colunas, dividir colunas, etc.

Neste artigo, você verá como dinamizar, não dinamizar e dividir colunas usando o editor de consultas do Power BI.

Importando um conjunto de dados para o Editor de consultas


O conjunto de dados usado como exemplo neste artigo está em um formato de arquivo CSV que pode ser baixado usando este link do kaggle. Baixe o arquivo CSV em seu sistema de arquivos local.

Em seguida, abra o Power BI Desktop, clique no botão “Obter dados” no menu superior. Na lista suspensa, selecione “Texto/CSV” conforme mostrado abaixo.

O Power BI levará algum tempo para importar os dados. Depois que os dados forem carregados, você deverá ver a janela abaixo.

O conjunto de dados contém informações sobre a população, área, taxa de natalidade, taxa de mortalidade, densidade populacional, PIB per capita, telefones por 1000, etc. para todos os países do mundo. Para carregar os dados no editor de consultas, clique no botão “Transform Data”.

O editor de consultas se parece com isso:

No editor de consultas, você pode realizar vários pré-processamentos, como colunas dinâmicas, não dinâmicas e divididas.

Teoria Pivotante e Não Pivotante


Antes de começarmos a dinamizar e não dinamizar colunas com o editor de consultas do Power BI. Vamos considerar um exemplo muito básico de unpivoting.

Desarticulação


Suponha que você tenha um conjunto de dados que contém as informações a seguir. As linhas na tabela a seguir correspondem aos países, enquanto as colunas mostram informações sobre o PIB per capita e a taxa de alfabetização para os países correspondentes nas linhas. (Nota:Estes são apenas valores fictícios, não os valores reais)
País PIB per capita Taxa de alfabetização
França 30.000 95%
Alemanha 25.000 96%

Se você não dinamizar uma única coluna, por exemplo, PIB Per Capita, o conjunto de dados com uma coluna não dinamizada ficará assim.
País Atributo Valor Alfabetização
França PIB per capita 30.000 95%
Alemanha PIB per capita 25.000 96%

Você pode ver que a coluna PIB Per Capita foi substituída por duas colunas, ou seja, Atributo e Valor. Os valores na coluna "Atributo" correspondem ao nome da coluna que não é dinâmica, enquanto a coluna "Valor" contém os valores que existiam anteriormente na coluna não dinâmica. Como apenas uma única coluna não é dinâmica, os valores na coluna “Atributo” serão sempre os mesmos. Além disso, o número de linhas no conjunto de dados com uma coluna não dinâmica permanecerá o mesmo.

Vamos agora tentar ver o que acontece quando desarticulamos duas colunas. Desativaremos as colunas PIB Per Capita e Taxa de Alfabetização no conjunto de dados original. O conjunto de dados com duas colunas não dinâmicas tem esta aparência.
País Atributo Valor
França PIB per capita 30.000
França Taxa de alfabetização 95%
Alemanha PIB per capita 25.000
Alemanha Taxa de alfabetização 96%

No conjunto de dados acima, você pode ver que, para cada nome de país, a coluna “Atributo” agora contém dois valores exclusivos:PIB Per Capita e Taxa de Alfabetização. A coluna “Valor” contém os valores correspondentes para os Atributos. Observe que o número de linhas dobrou. Da mesma forma, se você não dinamizar três colunas, o número de linhas em um conjunto de dados aumenta três vezes.

Pivotar


Pivotagem, como o nome sugere, refere-se ao processo usado para reverter um conjunto de dados não dinâmico para sua forma original. Por exemplo, ao dinamizar a tabela de entrada fica assim:
País Atributo Valor
França PIB per capita 30.000
França Taxa de alfabetização 95%
Alemanha PIB per capita 25.000
Alemanha Taxa de alfabetização 96%

Depois de aplicar o pivô nas colunas “Atributo” e “Valor”, o conjunto de dados assume o seguinte formato:
País PIB per capita Taxa de alfabetização
França 30.000 95%
Alemanha 25.000 96%

Agora que sabemos o que são dinamizar e não dinamizar, vamos ver como implementá-los com o Power BI.

Pivotar e não pivotar com o Power BI


Vamos primeiro ver um exemplo de como não dinamizar uma única coluna com o editor de consultas do Power BI. Se você observar o conjunto de dados, ele contém uma coluna chamada “População”. Para desarticular a coluna “População”, clique no cabeçalho da coluna e selecione a opção “Transformar” no menu superior. Você verá um novo menu com várias opções aparecendo na parte superior, clique na opção “Unpivot Columns” no menu e clique em “Unpivot Columns” na lista suspensa, conforme mostrado abaixo:

A coluna “População” será substituída pelas colunas “Atributo” e “Valor”, conforme demonstrado abaixo:

Agora, para dinamizar uma coluna, você tem duas opções. Você pode clicar na opção “x Unpivoted Columns” na janela “Applied Steps”, conforme mostrado na captura de tela a seguir.

A outra opção é selecionar uma coluna e depois selecionar “Transformar -> Coluna Dinâmica” no menu superior, conforme mostrado abaixo.

Ao dinamizar uma coluna, você deve especificar a coluna que contém os valores da coluna não dinamizada. No nosso caso, a coluna "Valor" contém valores para a coluna "Atributo" não dinâmica. Veja a captura de tela a seguir para referência.

A coluna dinâmica "População" tem esta aparência:

Mova a coluna “Population” ao lado do “Pop. Densidade (por quilômetro quadrado)” clicando no cabeçalho da coluna “População” e arrastando, conforme mostrado na captura de tela a seguir.

Em seguida, desarticularemos duas colunas, ou seja, “Population” e “Pop. Densidade (por quilômetro quadrado)”. Selecione ambos os cabeçalhos de coluna e, em seguida, desvire-os, conforme mostrado abaixo:

Depois de não dinamizar, você verá as duas colunas a seguir criadas no conjunto de dados. Você pode ver que a coluna “Atributo” agora contém informações sobre “População” e “Pop. Densidade (por quilômetro quadrado)”.

Selecione ambos os cabeçalhos das colunas (CTRL + Clique) e arraste as colunas ao lado da coluna “País”, conforme mostrado abaixo.

Agora, você pode ver os nomes dos “países”, sua população total e densidade populacional por milha quadrada. Vamos mudar o nome da coluna “Atributo” para “Tipo de população”, já que a coluna “Atributo” mostra dois tipos de população:a população total e a densidade populacional por quilômetro quadrado. O conjunto de dados com um nome de cabeçalho de coluna atualizado tem esta aparência:

Divisão de colunas


Antes de dividir as colunas, vamos substituir alguns valores na coluna “Tipo de População”.

O valor “Population” na coluna “Population Type” refere-se à população total. Vamos substituir o valor “Population” por “Pop. Total” para que tenha o mesmo padrão de “Pop. Densidade (por quilômetro quadrado)”. Para substituir valores em colunas, vá para “Transform -> Replace Values”, conforme mostrado na captura de tela a seguir.

Depois de substituir os valores, o conjunto de dados fica assim.

Agora, vamos dividir a coluna “Population Type” em duas. Seus primeiros cinco caracteres serão adicionados à primeira coluna, enquanto os caracteres restantes serão adicionados à outra coluna. Para dividir uma coluna, vá em “Transformar -> Dividir Colunas”. Estaremos dividindo pelos primeiros cinco caracteres, portanto, selecione a opção "Dividir por número de caracteres" no menu suspenso. Vamos dividir a coluna pelos 5 primeiros caracteres mais à esquerda. Para referência, observe a captura de tela a seguir.

Depois que as colunas forem divididas, você verá as duas colunas a seguir.

Precisamos apenas da coluna “Population Type.2”, pois ela contém informações sobre o tipo ou escala da população. Clique na coluna “Population Type.1” e selecione “Delete”.

Finalmente, você pode renomear a coluna “Population Type.2” para “Population Type” conforme mostrado abaixo.

Na figura a seguir, você pode ver que existem dois tipos diferentes de valores populacionais para cada país. O valor “Total” na coluna “Tipo de População” refere-se à população total do país. O valor real para a população total é armazenado na coluna “Valor da população”. Da mesma forma, o valor “Densidade (por sq. mi.)” mostra que este valor populacional refere-se à densidade populacional.

Conclusão


Em resumo, o artigo mostra como realizar a dinamização e não dinamização no editor de consultas do Power BI. Além disso, abrange a teoria básica por trás de colunas pivotantes e não pivotantes ilustradas por exemplos claros. Por fim, o artigo explica como o processo de divisão de colunas é implementado no editor de consultas do Power BI.