Gruppera eller sammanfatta rader
I Power Query kan du gruppera värden i olika rader till ett enda värde genom att gruppera raderna enligt värdena i en eller flera kolumner. Du kan välja mellan två typer av grupperingsåtgärder:
Kolumngruppningar.
Radgrupperingar.
I den här självstudien använder du följande exempeltabell.
Skärmbild av en tabell med kolumner som visar År (2020), Land (USA, Panama eller Kanada), Produkt (Skjorta eller Shorts), Försäljningskanal (Online eller Återförsäljare) och Enheter (olika värden från 55 till 7500)
Var du hittar knappen Gruppera efter
Du hittar -gruppsknappen med på tre platser:
På fliken Start, i gruppen Transformera.
På fliken Transform i gruppen Tabell.
När du högerklickar på snabbmenyn väljer du kolumner.
Använda en aggregeringsfunktion för att gruppera efter en eller flera kolumner
I det här exemplet är målet att sammanfatta det totala antalet sålda enheter på land- och försäljningskanalnivå. Du använder kolumnerna Country och Sales Channel för att utföra gruppering efter åtgärden.
- Välj Gruppera efter på fliken Start.
- Välj alternativet Avancerat så att du kan välja flera kolumner att gruppera efter.
- Välj kolumnen Country.
- Välj Lägg till gruppering.
- Välj kolumnen Sales Channel.
- I Nytt kolumnnamnanger du Totalt antal enheteri Åtgärdväljer du Summaoch i Kolumnväljer du Enheter.
- Välj OK
Den här åtgärden ger dig följande tabell.
Tillgängliga åtgärder
Med funktionen Gruppera efter kan tillgängliga åtgärder kategoriseras på två sätt:
- Åtgärd på radnivå
- Åtgärd på kolumnnivå
I följande tabell beskrivs var och en av dessa åtgärder.
Åtgärdsnamn | Kategori | Beskrivning |
---|---|---|
summa | Kolumnoperation | Summerar alla värden från en kolumn |
genomsnitt | Kolumnoperation | Beräknar medelvärdet från en kolumn |
median | Kolumnoperation | Beräknar medianen från en kolumn |
Min | Kolumnåtgärd | Beräknar minimivärdet från en kolumn |
Max | Kolumnoperation | Beräknar det maximala värdet från en kolumn |
Percentilvärde | Kolumnoperation | Beräknar percentilen med ett indatavärde från 0 till 100 från en kolumn |
Räkna distinkta värden | Kolumnoperation | Beräknar antalet distinkta värden från en kolumn |
Antal rader | Radåtgärd | Beräknar det totala antalet rader från en viss grupp |
Räkna distinkta rader | Radåtgärd | Beräknar antalet distinkta rader från en viss grupp |
Alla rader | Radåtgärd | Matar ut alla grupperade rader i ett tabellvärde utan sammansättningar |
Note
Count-distinkta värden och percentilåtgärder är endast tillgängliga i Power Query Online.
Utföra en åtgärd för att gruppera efter en eller flera kolumner
Från och med det ursprungliga exemplet skapar du i det här exemplet en kolumn som innehåller totalt antal enheter och två andra kolumner som ger dig namnet och enheterna som säljs för den mest högpresterande produkten, sammanfattade på land- och försäljningskanalnivå.
Använd följande kolumner som gruppera med kolumnerna:
- Land
- Försäljningskanal
Skapa två nya kolumner genom att följa dessa steg:
- Aggregera kolumnen Enheter med hjälp av åtgärden Sum. Namnge den här kolumnen Totalt antal enheter.
- Lägg till en ny Products-kolumn med hjälp av åtgärden Alla rader.
När åtgärden är klar ser du hur kolumnen Products innehåller [Tabell]-värden i varje cell. Varje [Tabell]-värde innehåller alla rader som grupperades efter Country och Sales Channel kolumner från den ursprungliga tabellen. Du kan välja det tomma utrymmet i cellen för att se en förhandsgranskning av innehållet i tabellen längst ned i dialogrutan.
Obs
Förhandsgranskningsfönstret kanske inte visar alla rader som användes för grupperingsoperationen. Du kan välja värdet [Tabell] för att se alla rader som hör till motsvarande grupp-efter-åtgärd.
Därefter måste du extrahera den rad som har det högsta värdet i kolumnen Enheter i tabellerna i den nya kolumnen Produkter och anropa den nya kolumnen Toppresterande produkt.
Extrahera produktinformationen för de bästa artisterna
Med den nya kolumnen Products med [Table]-värden skapar du en ny anpassad kolumn genom att gå till fliken Lägg till kolumn i menyfliksområdet och välja Anpassad kolumn från gruppen Allmänt.
Namnge den nya kolumnen Toppresterande produkt. Ange formeln Table.Max([Products], "Units" )
i anpassad kolumnformel.
Resultatet av formeln skapar en ny kolumn med [Record]-värden. Dessa postvärden är i grund och botten en tabell med endast en rad. Dessa poster innehåller raden med det maximala värdet för Enheter-kolumnen för varje [Table]-värde i Produkter-kolumnen.
Med den här nya bästa produkt-kolumnen som innehåller [Record]-värden kan du välja expanderaikonen , välja fälten Produkt och Enheter och sedan välja OK.
När du tar bort Produkter kolumn och anger datatypen för båda de nyligen expanderade kolumnerna liknar resultatet följande bild.
Fuzzy-gruppering
Obs!
Följande funktion är endast tillgänglig i Power Query Online.
Om du vill visa hur du gör "fuzzy grouping" bör du överväga exempeltabellen som visas i följande bild.
Målet med suddig gruppering är att utföra en gruppering som använder en ungefärlig matchningsalgoritm för textsträngar. Power Query använder Jaccard-likhetsalgoritmen för att mäta likheten mellan instanspar. Sedan tillämpas agglomerativ hierarkisk klustring för att gruppera instanser tillsammans. Följande bild visar de utdata som du förväntar dig, där tabellen grupperas efter kolumnen Person.
Om du vill göra fuzzy-gruppering utför du samma steg som tidigare beskrivits i den här artikeln. Den enda skillnaden är att du den här gången, i dialogrutan Gruppera efter, markerar kryssrutan Använd fuzzy-gruppering.
För varje grupp med rader väljer Power Query den vanligaste instansen som den "kanoniska" instansen. Om flera fall inträffar med samma frekvens väljer Power Query det första. När du har valt OK i dialogrutan Gruppera efter får du det resultat du förväntade dig.
Du har dock mer kontroll över fuzzy-grupperingsoperationen genom att expandera alternativ för fuzzy-gruppering.
Följande alternativ är tillgängliga för fuzzy-gruppering:
- Likhetströskel (valfritt): Det här alternativet anger hur lika två värden måste vara för att grupperas. Den minsta inställningen noll (0) gör att alla värden grupperas tillsammans. Den maximala inställningen på 1 tillåter endast att värden som matchar exakt grupperas tillsammans. Standardvärdet är 0,8.
- Ignorera skiftläge: När textsträngar jämförs ignoreras skiftläget. Det här alternativet är aktiverat som standard.
- Grupp genom att kombinera textdelar: Algoritmen försöker kombinera textdelar (till exempel att kombinera Micro och soft till Microsoft) till gruppvärden.
- Visa likhetspoäng: Visa likhetspoäng mellan indatavärdena och de beräknade representativa värdena efter fuzzy-gruppering. Kräver att en åtgärd läggs till, till exempel Alla rader för att visa den här informationen på rad-för-rad-nivå.
- transformationstabell (valfritt): Du kan välja en transformeringstabell som mappar värden (till exempel mappning MSFT- till Microsoft) för att gruppera dem.
I det här exemplet används en transformeringstabell för att visa hur värden kan mappas. Transformeringstabellen har två kolumner:
- Från: Textsträngen som du vill söka efter i tabellen.
- Till: Textsträngen som ska användas för att ersätta textsträngen i kolumnen Från.
Följande bild visar transformeringstabellen som används i det här exemplet.
Viktig
Det är viktigt att transformeringstabellen har samma kolumner och kolumnnamn som i föregående bild (de måste vara märkta "Från" och "Till"). Annars känner Power Query inte igen tabellen som en transformeringstabell.
Gå tillbaka till dialogrutan Gruppera efter, expandera Fuzzy-gruppalternativ, ändra åtgärden från Antal rader till Alla rader, aktivera alternativet Visa likhetspoäng och välj sedan listrutan Transformeringstabell.
När du har valt transformeringstabellen väljer du OK. Resultatet av åtgärden ger dig följande information:
I det här exemplet aktiverades alternativet Ignorera skiftläge, så värdena i kolumnen From i tabellen Transformation används för att leta efter textsträngen utan att ta hänsyn till strängens skiftläge. Den här transformeringsåtgärden inträffar först och sedan utförs den fuzzy-grupperingsåtgärden.
Likhetspoängen visas också i tabellvärdet bredvid personkolumnen, vilket återspeglar exakt hur värdena grupperades och deras respektive likhetspoäng. Du kan expandera den här kolumnen om det behövs eller använda värdena från de nya frekvenskolumnerna för andra typer av transformeringar.
Anteckning
När du grupperar efter flera kolumner utför transformeringstabellen ersättningsåtgärden i alla kolumner om ersättningen av värdet ökar likhetspoängen.
Mer information om hur transformeringstabeller fungerar finns i transformationstabellprecept.