Gruppering eller opsummering af rækker
I Power Query kan du gruppere værdier i forskellige rækker til en enkelt værdi ved at gruppere rækkerne i henhold til værdierne i en eller flere kolonner. Du kan vælge mellem to typer grupperingshandlinger:
Kolonnegrupperinger.
Rækkegrupperinger.
I dette selvstudium bruger du følgende eksempeltabel.
Skærmbillede af en tabel med kolonner, der viser Year (2020), Country (USA, Panama eller Canada), Product (Shirt or Shorts), Sales channel (Online eller Reseller) og Units (forskellige værdier fra 55 til 7500)
Hvor finder du knappen Gruppér efter
Du kan finde knappen Gruppér efter tre steder:
Under fanen Hjem i gruppen Transformér.
Under fanen Transformér i gruppen Tabel.
Når du højreklikker i genvejsmenuen for at vælge kolonner.
Brug en aggregatfunktion til at gruppere efter en eller flere kolonner
I dette eksempel er dit mål at opsummere det samlede antal solgte enheder på lande- og salgskanalniveau. Du kan bruge kolonnerne Land og Salgskanal til at udføre gruppér efter handling.
- Vælg Gruppér efter under fanen Hjem .
- Vælg indstillingen Avanceret , så du kan vælge flere kolonner, der skal grupperes efter.
- Vælg kolonnen Land .
- Vælg Tilføj gruppering.
- Vælg kolonnen Sales Channel .
- Under Nyt kolonnenavn skal du angive Enheder i alt i Handling, vælge Sum og vælge Enheder i Kolonne.
- Vælg OK
Denne handling giver dig følgende tabel.
Tilgængelige handlinger
Med funktionen Gruppér efter kan de tilgængelige handlinger kategoriseres på to måder:
- Handling på rækkeniveau
- Handling på kolonneniveau
I følgende tabel beskrives hver af disse handlinger.
Handlingsnavn | Kategori | Beskrivelse |
---|---|---|
Sum | Kolonnehandling | Opsummerer alle værdier fra en kolonne |
Gennemsnitlig | Kolonnehandling | Beregner den gennemsnitlige værdi fra en kolonne |
Median | Kolonnehandling | Beregner medianen fra en kolonne |
Min | Kolonnehandling | Beregner minimumværdien ud fra en kolonne |
Maks. | Kolonnehandling | Beregner maksimumværdien ud fra en kolonne |
Percentil | Kolonnehandling | Beregner fraktilen ved hjælp af en inputværdi fra 0 til 100 fra en kolonne |
Antal entydige værdier | Kolonnehandling | Beregner antallet af entydige værdier fra en kolonne |
Antal rækker | Rækkehandling | Beregner det samlede antal rækker fra en given gruppe |
Antal særskilte rækker | Rækkehandling | Beregner antallet af særskilte rækker fra en given gruppe |
Alle rækker | Rækkehandling | Skriver alle grupperede rækker i en tabelværdi uden sammenlægninger |
Bemærk
Handlingerne Count distinct values og Percentile er kun tilgængelige i Power Query Online.
Udfør en handling for at gruppere efter en eller flere kolonner
Fra og med det oprindelige eksempel opretter du i dette eksempel en kolonne, der indeholder det samlede antal enheder og to andre kolonner, der giver dig det navn og de enheder, der er solgt for det mest effektive produkt, opsummeret på lande- og salgskanalniveau.
Brug følgende kolonner som Gruppér efter kolonner:
- Land
- Salgskanal
Opret to nye kolonner ved at følge disse trin:
- Aggregere kolonnen Units ved hjælp af handlingen Sum . Navngiv denne kolonne Enheder i alt.
- Tilføj en ny produktkolonne ved hjælp af handlingen Alle rækker.
Når denne handling er fuldført, kan du se, hvordan kolonnen Products indeholder [Table]-værdier i hver celle. Hver [Table]-værdi indeholder alle de rækker, der er grupperet efter kolonnerne Country og Sales Channel fra den oprindelige tabel. Du kan vælge blanktegn i cellen for at få vist et eksempel på indholdet af tabellen nederst i dialogboksen.
Bemærk
Ruden med detaljevisning viser muligvis ikke alle de rækker, der blev brugt til gruppér efter-handlingen. Du kan vælge værdien [Table] for at se alle rækker, der vedrører den tilsvarende gruppér efter-handling.
Derefter skal du udtrække den række, der har den højeste værdi i kolonnen Units i tabellerne i den nye produktkolonne, og kalde den nye kolonne Top performer product.
Udtræk de mest populære produktoplysninger
Med den nye kolonne Products med [Table]-værdier opretter du en ny brugerdefineret kolonne ved at gå til fanen Tilføj kolonne på båndet og vælge Brugerdefineret kolonne i gruppen Generelt .
Navngiv din nye kolonne Top performer-produkt. Angiv formlen Table.Max([Products], "Units" )
under Brugerdefineret kolonneformel.
Resultatet af formlen opretter en ny kolonne med [Record]-værdier. Disse postværdier er grundlæggende en tabel med kun én række. Disse poster indeholder rækken med den maksimale værdi for kolonnen Units for hver [Table]-værdi i kolonnen Products.
Med denne nye produktkolonne med den bedste performer, der indeholder [Record]-værdier, kan du vælge udvidelsesikonet , vælge felterne Produkt og Enheder og derefter vælge OK.
Når du har fjernet kolonnen Products og angivet datatypen for begge nyligt udvidede kolonner, ligner resultatet følgende billede.
Fuzzy gruppering
Bemærk
Følgende funktion er kun tilgængelig i Power Query Online.
Hvis du vil demonstrere, hvordan du udfører "fuzzy gruppering", skal du overveje eksempeltabellen, der vises på følgende billede.
Målet med fuzzy gruppering er at udføre en gruppér efter-handling, der bruger en omtrentlig matchalgoritme for tekststrenge. Power Query bruger algoritmen Jaccard-lighed til at måle ligheden mellem forekomster. Derefter anvendes agglomerative hierarkiske klynger til at gruppere forekomster sammen. På følgende billede vises det output, du forventer, hvor tabellen er grupperet efter kolonnen Person .
Hvis du vil udføre fuzzy gruppering, skal du udføre de samme trin, der tidligere er beskrevet i denne artikel. Den eneste forskel er, at du denne gang markerer afkrydsningsfeltet Brug fuzzy gruppering i dialogboksen Gruppér efter.
For hver gruppe rækker vælger Power Query den hyppigste forekomst som den "vedtagne" forekomst. Hvis der forekommer flere forekomster med samme hyppighed, vælger Power Query den første. Når du har valgt OK i dialogboksen Gruppér efter , får du det resultat, du forventede.
Du har dog mere kontrol over fuzzy grupperingshandlingen ved at udvide Fuzzy-gruppeindstillingerne.
Følgende indstillinger er tilgængelige for fuzzy gruppering:
- Tærskel for lighed (valgfrit): Denne indstilling angiver, hvordan lignende to værdier skal grupperes. Minimumindstillingen på nul (0) medfører, at alle værdier grupperes. Den maksimale indstilling på 1 tillader kun, at værdier, der stemmer nøjagtigt overens, grupperes. Standarden er 0,8.
- Ignorer stort: Når tekststrenge sammenlignes, ignoreres forskel på små og små bogstaver. Denne indstilling er aktiveret som standard.
- Gruppér ved at kombinere tekstdele: Algoritmen forsøger at kombinere tekstdele (f.eks. kombination af Micro og soft i Microsoft) for at gruppere værdier.
- Vis lighedsscores: Vis lighedsscores mellem inputværdierne og de beregnede repræsentative værdier efter fuzzy gruppering. Kræver tilføjelse af en handling, f.eks . Alle rækker , for at vise disse oplysninger på række-for-række-niveau.
- Transformationstabel (valgfrit): Du kan vælge en transformationstabel, der knytter værdier (f.eks. tilknytning af MSFT til Microsoft) for at gruppere dem.
I dette eksempel bruges en transformationstabel til at vise, hvordan værdier kan tilknyttes. Transformationstabellen indeholder to kolonner:
- Fra: Den tekststreng, der skal søges efter i tabellen.
- Til: Den tekststreng, der skal bruges til at erstatte tekststrengen i kolonnen From .
På følgende billede vises den transformationstabel, der bruges i dette eksempel.
Vigtigt
Det er vigtigt, at transformationstabellen har de samme kolonner og kolonnenavne som vist på det forrige billede (de skal have navnet "Fra" og "Til"). Ellers genkender Power Query ikke tabellen som en transformationstabel.
Gå tilbage til dialogboksen Gruppér efter , udvid Fuzzy-gruppeindstillinger, skift handlingen fra Antal rækker til Alle rækker, aktivér indstillingen Vis lighedsscores , og vælg derefter rullemenuen Transformationstabel .
Når du har valgt transformationstabellen, skal du vælge OK. Resultatet af denne handling giver dig følgende oplysninger:
I dette eksempel blev indstillingen Ignorer store og små bogstaver aktiveret, så værdierne i kolonnen Fra i tabellen Transformation bruges til at søge efter tekststrengen uden at tage hensyn til store og små bogstaver i strengen. Denne transformationshandling udføres først, og derefter udføres fuzzy grupperingshandlingen.
Lighedsscoren vises også i tabelværdien ud for personkolonnen, hvilket afspejler nøjagtigt, hvordan værdierne blev grupperet, og deres respektive lighedsscores. Du kan udvide denne kolonne, hvis det er nødvendigt, eller bruge værdierne fra de nye frekvenskolonner til andre typer transformationer.
Bemærk
Når du grupperer efter flere kolonner, udfører transformationstabellen erstatningshandlingen i alle kolonner, hvis erstatning af værdien øger lighedsscoren.
Du kan få flere oplysninger om, hvordan transformationstabeller fungerer, ved at gå til Forskrifter for transformationstabel.