sql >> Databasteknik >  >> RDS >> Database

Pivotera, avpivotera och dela kolumner i Power BI Query Editor

Som referens är Power BI en programvara för datavisualisering och analys som utvecklats av Microsoft. Power BI kan användas för statisk såväl som interaktiv datavisualisering. Innan du kan skapa faktiska visualiseringar med Power BI kan du utföra dataförbehandling med Power BI Query Editor.

Med frågeredigeraren kan du utföra olika datatransformationsuppgifter, som att ändra kolumntyper, hantera saknade värden, ta bort rader och kolumner, pivotera och avpivotera kolumner, dela upp kolumner, etc.

I den här artikeln kommer du att se hur du pivoterar, avpivoterar och delar kolumner med hjälp av Power BI Query Editor.

Importera en datamängd till frågeredigeraren

Datauppsättningen som används som exempel i den här artikeln är i ett CSV-filformat som kan laddas ner med denna kaggle-länk. Ladda ner CSV-filen till ditt lokala filsystem.

Öppna sedan Power BI Desktop, klicka på knappen "Hämta data" från toppmenyn. Från rullgardinsmenyn, välj "Text/CSV" som visas nedan.

Power BI kommer att ta lite tid att importera data. När data har laddats bör du se fönstret nedan.

Datauppsättningen innehåller information om befolkning, area, födelsetal, dödsfrekvens, befolkningstäthet, BNP per capita, telefoner per 1000, etc. för alla länder i världen. För att ladda data till frågeredigeraren, klicka på knappen "Transformera data".

Frågeredigeraren ser ut så här:

I frågeredigeraren kan du utföra olika förbearbetningar som att pivotera, avpivotera och dela kolumner.

Teori om pivotering och osvängning

Innan vi faktiskt går ner till att pivotera och avpivotera kolumner med Power BI-frågeredigerare. Låt oss överväga ett mycket grundläggande exempel på unpivoting.

Avpivotering

Anta att du har en datauppsättning som innehåller följande information. Raderna i följande tabell motsvarar länder, medan kolumnerna visar information om BNP per capita och läskunnighet för motsvarande länder i rader. (Obs:Dessa är bara dummyvärden, inte de faktiska värdena)

Land BNP per capita Läs- och skrivkunnighet
Frankrike 30 000 95 %
Tyskland 25 000 96 %

Om du avpivoterar en enskild kolumn, t.ex. BNP per capita, kommer datasetet med en opivoterad kolumn att se ut så här.

Land Attribut Värde Läs- och skrivkunnighet
Frankrike BNP per capita 30 000 95 %
Tyskland BNP per capita 25 000 96 %

Du kan se att kolumnen BNP per capita har ersatts av två kolumner, d.v.s. Attribut och Value. Värdena i kolumnen "Attribut" motsvarar kolumnnamnet som är opivoterat, medan kolumnen "Värde" innehåller de värden som tidigare fanns i den opivoterade kolumnen. Eftersom endast en kolumn är opivoterad kommer värdena i kolumnen "Attribut" alltid att vara desamma. Dessutom kommer antalet rader i datamängden med en opivoterad kolumn att förbli detsamma.

Låt oss nu försöka se vad som händer när vi avpivoterar två kolumner. Vi kommer att avpivotera både kolumnerna BNP per capita och läskunnighet i den ursprungliga datamängden. Datauppsättningen med två opivoterade kolumner ser ut så här.

Land Attribut Värde
Frankrike BNP per capita 30 000
Frankrike Läs- och skrivkunnighet 95 %
Tyskland BNP per capita 25 000
Tyskland Läs- och skrivkunnighet 96 %

I datauppsättningen ovan kan du se att för varje landsnamn innehåller kolumnen "Attribut" nu två unika värden:BNP per capita och läskunnighet. Kolumnen "Värde" innehåller motsvarande värden för attributen. Lägg märke till att antalet rader har fördubblats. På liknande sätt, om du avpivoterar tre kolumner, ökar antalet rader i en datauppsättning med tre gånger.

Vridbar

Pivotering, som namnet antyder, hänvisar till den process som används för att vända en opivoterad datauppsättning till dess ursprungliga form. Till exempel, vid pivotering ser inmatningstabellen ut så här:

Land Attribut Värde
Frankrike BNP per capita 30 000
Frankrike Läs- och skrivkunnighet 95 %
Tyskland BNP per capita 25 000
Tyskland Läs- och skrivkunnighet 96 %

Efter att ha tillämpat pivotering på kolumnerna "Attribut" och "Värde", har datasetet följande form:

Land BNP per capita Läs- och skrivkunnighet
Frankrike 30 000 95 %
Tyskland 25 000 96 %

Nu när vi vet vad pivotering och unpivoting är, låt oss se hur man implementerar dem med Power BI.

Pivotera och avpivotera med Power BI

Låt oss först se ett exempel på hur man avpivoterar en enda kolumn med Power BI-frågeredigeraren. Om du tittar på datasetet innehåller det en kolumn med namnet "Population". För att avpivotera kolumnen "Population", klicka på kolumnrubriken och välj sedan alternativet "Transformera" från toppmenyn. Du kommer att se en ny meny med flera alternativ visas högst upp, klicka på alternativet "Unpivot Columns" från menyn och klicka sedan på "Unpivot Columns" från rullgardinsmenyn, som visas nedan:

Kolumnen "Population" kommer att ersättas av kolumnerna "Attribut" och "Värde", som visas nedan:

Nu, för att pivotera en kolumn, har du två alternativ. Du kan klicka på alternativet "x Unpivoted Columns" i fönstret "Applied Steps", som visas i följande skärmdump.

Det andra alternativet är att välja en kolumn och sedan välja "Transformera -> Pivotkolumn" från toppmenyn, som visas nedan.

När du pivoterar en kolumn måste du ange kolumnen som innehåller värdena för den opivoterade kolumnen. I vårt fall innehåller kolumnen "Värde" värden för den opivoterade "Attribut"-kolumnen. Titta på följande skärmdump för referens.

Den pivoterade "Population"-kolumnen ser ut så här:

Flytta kolumnen "Population" precis bredvid "Pop. Densitet (per sq. mi.)" genom att klicka på kolumnrubriken "Population" och dra, som visas i följande skärmdump.

Därefter kommer vi att avpivotera två kolumner, det vill säga "Population" och "Pop. Densitet (per kvadratkilometer)”. Välj båda kolumnrubrikerna och avpivot dem sedan, som visas nedan:

Efter avpivotering bör du se följande två kolumner skapade i datamängden. Du kan se att kolumnen "Attribut" nu innehåller information om "Population" och "Pop. Densitet (per sq. mi.)”.

Välj båda kolumnrubrikerna (CTRL + Klicka) och dra sedan kolumnerna precis bredvid kolumnen "Land", som visas nedan.

Nu kan du se "landsnamn", deras totala befolkning och befolkningstäthet per kvadratkilometer. Låt oss ändra namnet på kolumnen "Attribut" till "Befolkningstyp" eftersom kolumnen "Attribut" visar två typer av befolkning:den totala befolkningen och befolkningstätheten per kvadratkilometer. Datauppsättningen med ett uppdaterat kolumnrubriknamn ser ut så här:

Dela upp kolumner

Innan vi delar upp kolumner kommer vi att ersätta några värden i kolumnen "Population Type".

Värdet "Population" i kolumnen "Population Type" hänvisar till den totala populationen. Vi kommer att ersätta värdet "Population" med "Pop. Totalt" så att det har samma mönster som "Pop. Densitet (per kvadratkilometer)”. För att ersätta värden i kolumner, gå till "Transformera -> Ersätt värden", som visas i följande skärmdump.

Efter att ha ersatt värdena ser datasetet ut så här.

Nu kommer vi att dela upp kolumnen "Population Type" i två. Dess första fem tecken läggs till i den första kolumnen, medan de återstående tecknen läggs till i den andra kolumnen. För att dela en kolumn, gå till "Transformera -> Dela kolumner". Vi kommer att dela upp med de första fem tecknen, välj därför alternativet "Dela upp efter antal tecken" från rullgardinsmenyn. Vi delar upp kolumnen med de första 5 tecknen längst till vänster. För referens, titta på följande skärmdump.

När kolumnerna är delade bör du se följande två kolumner.

Vi behöver bara kolumnen "Population Type.2" eftersom den innehåller information om populationens typ eller skala. Klicka på kolumnen "Population Type.1" och välj sedan "Delete".

Slutligen kan du byta namn på kolumnen "Population Type.2" till "Population Type" som visas nedan.

Av följande figur kan du se att det finns två olika typer av befolkningsvärden för varje land. Värdet "Totalt" i kolumnen "Befolkningstyp" hänvisar till landets totala befolkning. Det faktiska värdet för den totala populationen lagras i kolumnen "Population Value". På samma sätt visar värdet "Täthet (per sq. mi.)" att detta befolkningsvärde avser befolkningstäthet.

Slutsats

Sammanfattningsvis visar artikeln dig hur du utför pivotering och avpivotering i Power BI-frågeredigeraren. Dessutom täcker den den grundläggande teorin bakom svängbara och osvängbara kolumner illustrerade med tydliga exempel. Slutligen förklarar artikeln hur processen att dela kolumner implementeras i Power BI-frågeredigeraren.


  1. Hur förhindrar jag automatisk avstängning av SQL Server LocalDB?

  2. Infoga i en MySQL-tabell eller uppdatera om det finns

  3. SYSDATETIMEOFFSET() Exempel i SQL Server (T-SQL)

  4. Skapa lagrade procedurer med hjälp av Entity Framework Code först?