Share via


Bedste fremgangsmåder, når du arbejder med Power Query

Denne artikel indeholder nogle tip og tricks til at få mest ud af din data wrangling-oplevelse i Power Query.

Vælg den rigtige connector

Power Query indeholder et stort antal dataconnectors. Disse connectorer spænder fra datakilder som TXT-, CSV- og Excel-filer til databaser som Microsoft SQL Server og populære SaaS-tjenester, f.eks. Microsoft Dynamics 365 og Salesforce. Hvis du ikke kan se din datakilde i vinduet Hent data , kan du altid bruge ODBC- eller OLEDB-connectoren til at oprette forbindelse til datakilden.

Hvis du bruger den bedste connector til opgaven, får du den bedste oplevelse og ydeevne. Hvis du f.eks. bruger SQL Server-connectoren i stedet for ODBC-connectoren, når du opretter forbindelse til en SQL Server-database, får du ikke kun en meget bedre Hent data-oplevelse , men SQL Server-connectoren indeholder også funktioner, der kan forbedre din oplevelse og ydeevne, f.eks. forespørgselsdelegering. Hvis du vil læse mere om forespørgselsdelegering, skal du gå til Oversigt over evaluering af forespørgsler og forespørgselsdelegering i Power Query.

Hver dataconnector følger en standardoplevelse, som forklaret i Hent data. Denne standardiserede oplevelse har en fase med navnet Dataeksempel. I denne fase får du et brugervenligt vindue til at vælge de data, du vil hente fra din datakilde, hvis connectoren tillader det, og en simpel dataeksempel på disse data. Du kan endda vælge flere datasæt fra din datakilde via vinduet Navigator , som vist på følgende billede.

Eksempel på navigatorvindue.

Bemærk

Hvis du vil se en komplet liste over tilgængelige connectors i Power Query, skal du gå til Forbind orer i Power Query.

Filtrer tidligt

Det anbefales altid at filtrere dine data i de tidlige faser af din forespørgsel eller så tidligt som muligt. Nogle connectors vil drage fordel af dine filtre via forespørgselsdelegering, som beskrevet i Oversigt over forespørgselsevaluering og forespørgselsdelegering i Power Query. Det er også bedste praksis at filtrere alle data, der ikke er relevante for din sag, fra. Dette giver dig bedre mulighed for at fokusere på din opgave ved kun at vise data, der er relevante i afsnittet med forhåndsvisning af data.

Du kan bruge menuen til automatisk filtrering, der viser en særskilt liste over de værdier, der findes i kolonnen, til at vælge de værdier, du vil beholde eller filtrere ud. Du kan også bruge søgelinjen til at hjælpe dig med at finde værdierne i kolonnen.

Menuen Automatisk filtrering i Power Query.

Du kan også drage fordel af de typespecifikke filtre, f.eks . I forrige forrige for en dato, datetime eller endda datotidszonekolonne.

skriv et bestemt filter for en datokolonne.

Disse typespecifikke filtre kan hjælpe dig med at oprette et dynamisk filter, der altid henter data i det forrige x antal sekunder, minutter, timer, dage, uger, måneder, kvartaler eller år, som vist på følgende billede.

Er i det forrige datospecifikke filter.

Bemærk

Hvis du vil vide mere om filtrering af dine data baseret på værdier fra en kolonne, skal du gå til Filtrer efter værdier.

Gør dyre handlinger sidst

Visse handlinger kræver læsning af hele datakilden for at returnere resultater og vil derfor være langsomme at få vist i Power Query-editor. Hvis du f.eks. udfører en sortering, er det muligt, at de første par sorterede rækker er i slutningen af kildedataene. Hvis du vil returnere resultater, skal sorteringshandlingen først læse alle rækkerne.

Andre handlinger (f.eks. filtre) behøver ikke at læse alle dataene, før der returneres nogen resultater. I stedet arbejder de med dataene på en såkaldt "streaming"-måde. Dataene "streams" efter, og resultaterne returneres undervejs. I Power Query-editor behøver sådanne handlinger kun at læse nok af kildedataene for at udfylde eksemplet.

Når det er muligt, skal du udføre sådanne streaminghandlinger først og udføre dyrere handlinger sidst. Dette hjælper med at minimere den tid, du bruger på at vente på, at prøveversionen gengives, hver gang du føjer et nyt trin til forespørgslen.

Arbejd midlertidigt mod et undersæt af dine data

Hvis det tager lang tid at føje nye trin til forespørgslen i Power Query-editor, kan du overveje først at udføre handlingen "Bevar de første rækker" og begrænse antallet af rækker, du arbejder imod. Når du derefter har tilføjet alle de trin, du har brug for, skal du fjerne trinnet "Bevar de første rækker".

Brug de korrekte datatyper

Nogle funktioner i Power Query er kontekstafhængige for datatypen for den valgte kolonne. Når du f.eks. vælger en datokolonne, vil de tilgængelige indstillinger under kolonnegruppen Dato og klokkeslæt i menuen Tilføj kolonne være tilgængelige. Men hvis kolonnen ikke har et datatypesæt, nedtones disse indstillinger.

Skriv en bestemt indstilling i menuen Tilføj kolonne.

Der opstår en lignende situation for de typespecifikke filtre, da de er specifikke for visse datatyper. Hvis kolonnen ikke har defineret den korrekte datatype, vil disse typespecifikke filtre ikke være tilgængelige.

skriv et bestemt filter for en datokolonne.

Det er afgørende, at du altid arbejder med de korrekte datatyper for dine kolonner. Når du arbejder med strukturerede datakilder, f.eks. databaser, hentes oplysningerne om datatypen fra tabelskemaet, der findes i databasen. Men for ustrukturerede datakilder, f.eks. TXT- og CSV-filer, er det vigtigt, at du angiver de korrekte datatyper for de kolonner, der kommer fra den pågældende datakilde. Power Query tilbyder som standard automatisk registrering af datatyper for ustrukturerede datakilder. Du kan læse mere om denne funktion, og hvordan den kan hjælpe dig i Datatyper.

Bemærk

Hvis du vil vide mere om vigtigheden af datatyper, og hvordan du arbejder med dem, skal du se Datatyper.

Udforsk dine data

Før du begynder at forberede dine data og tilføje nye transformationstrin, anbefaler vi, at du aktiverer Værktøjer til dataprofilering i Power Query, så du nemt kan finde oplysninger om dine data.

Værktøjer til dataeksempel eller dataprofilering i Power Query.

Disse værktøjer til dataprofilering hjælper dig med bedre at forstå dine data. Værktøjerne giver dig små visualiseringer, der viser dig oplysninger pr. kolonne, f.eks.:

  • Kolonnekvalitet – Indeholder et lille liggende søjlediagram og tre indikatorer med repræsentation af, hvor mange værdier i kolonnen der er omfattet af kategorierne gyldige værdier, fejlværdier eller tomme værdier.
  • Kolonnedistribution – Indeholder et sæt visualiseringer under navnene på de kolonner, der viser hyppigheden og fordelingen af værdierne i hver af kolonnerne.
  • Kolonneprofil – Giver en mere grundig visning af kolonnen og de statistikker, der er knyttet til den.

Du kan også interagere med disse funktioner, hvilket hjælper dig med at forberede dine data.

Indstillinger for pegefølsom datakvalitet.

Bemærk

Hvis du vil vide mere om værktøjerne til dataprofilering, skal du gå til Værktøjer til dataprofilering.

Dokumentér dit arbejde

Vi anbefaler, at du dokumenterer dine forespørgsler ved at omdøbe eller føje en beskrivelse til dine trin, forespørgsler eller grupper efter behov.

Selvom Power Query automatisk opretter et trinnavn for dig i ruden anvendte trin, kan du også omdøbe dine trin eller føje en beskrivelse til en af dem.

Ruden Anvendte trin med dokumenterede trin og beskrivelse tilføjet.

Bemærk

Hvis du vil vide mere om alle de tilgængelige funktioner og komponenter, der findes i ruden anvendte trin, skal du gå til Brug af listen Anvendte trin.

Tag en modulopbygget tilgang

Det er helt muligt at oprette en enkelt forespørgsel, der indeholder alle de transformationer og beregninger, du har brug for. Men hvis forespørgslen indeholder et stort antal trin, kan det være en god idé at opdele forespørgslen i flere forespørgsler, hvor den ene forespørgsel refererer til den næste. Målet med denne tilgang er at forenkle og afkoble transformationsfaser i mindre dele, så de er nemmere at forstå.

Lad os f.eks. sige, at du har en forespørgsel med de ni trin, der vises på følgende billede.

Ruden Anvendte trin med dokumenterede trin og beskrivelse tilføjet.

Du kan opdele denne forespørgsel i to på tabeltrinnet Flet med priser. På den måde er det nemmere at forstå de trin, der blev anvendt på salgsforespørgslen før fletningen. Hvis du vil udføre denne handling, skal du højreklikke på trinnet Flet med priser og vælge indstillingen Udtræk forrige .

Udtræk forrige trin.

Du bliver derefter bedt om at angive et navn til den nye forespørgsel med en dialogboks. Dette opdeler effektivt din forespørgsel i to forespørgsler. Én forespørgsel har alle forespørgslerne før fletningen. Den anden forespørgsel har et indledende trin, der refererer til den nye forespørgsel og resten af de trin, du havde i den oprindelige forespørgsel, fra trinnet Flet med priser nedad.

Oprindelig forespørgsel efter udtrækningen af den forrige trinhandling.

Du kan også udnytte brugen af forespørgselsrefererer, som du vil. Men det er en god idé at holde dine forespørgsler på et niveau, der ikke virker skræmmende ved første øjekast med så mange trin.

Bemærk

Hvis du vil vide mere om forespørgselsrefererer, skal du gå til Om ruden Forespørgsler.

Opret grupper

En god måde at holde dit arbejde organiseret på er ved at udnytte brugen af grupper i forespørgselsruden.

Arbejde med grupper i Power Query.

Det eneste formål med grupper er at hjælpe dig med at holde dit arbejde organiseret ved at fungere som mapper til dine forespørgsler. Du kan oprette grupper i grupper, hvis du får brug for det. Det er lige så nemt at flytte forespørgsler på tværs af grupper som at trække og slippe.

Prøv at give dine grupper et meningsfuldt navn, der giver mening for dig og din sag.

Bemærk

Hvis du vil vide mere om alle de tilgængelige funktioner og komponenter, der findes i ruden Forespørgsler, skal du gå til Om ruden Forespørgsler.

Fremtidssikrede forespørgsler

Det er en topprioritet at sikre, at du opretter en forespørgsel, der ikke har problemer under en fremtidig opdatering. Der er flere funktioner i Power Query, der gør din forespørgsel modstandsdygtig over for ændringer og kan opdateres, selvom nogle komponenter i datakilden ændres.

Det er bedste praksis at definere omfanget af din forespørgsel for, hvad den skal gøre, og hvad den skal tage højde for med hensyn til struktur, layout, kolonnenavne, datatyper og enhver anden komponent, som du anser for relevant for området.

Nogle eksempler på transformationer, der kan hjælpe dig med at gøre din forespørgsel modstandsdygtig over for ændringer, er:

  • Hvis din forespørgsel har et dynamisk antal rækker med data, men et fast antal rækker, der fungerer som den sidefod, der skal fjernes, kan du bruge funktionen Fjern nederste rækker .

    Bemærk

    Hvis du vil vide mere om filtrering af dine data efter rækkeposition, skal du gå til Filtrer en tabel efter rækkeplacering.

  • Hvis din forespørgsel har et dynamisk antal kolonner, men du kun skal vælge bestemte kolonner fra dit datasæt, kan du bruge funktionen Vælg kolonner .

    Bemærk

    Hvis du vil vide mere om at vælge eller fjerne kolonner, skal du gå til Vælg eller fjern kolonner.

  • Hvis din forespørgsel har et dynamisk antal kolonner, og du kun skal frigøre et undersæt af dine kolonner, kan du bruge funktionen Unpivot only selected columns .

    Bemærk

    Hvis du vil vide mere om indstillingerne for at frigøre dine kolonner, skal du gå til Unpivot-kolonner.

  • Hvis din forespørgsel indeholder et trin, der ændrer datatypen for en kolonne, men nogle celler returnerer fejl, da værdierne ikke er i overensstemmelse med den ønskede datatype, kan du fjerne de rækker, der gav fejlværdier.

    Bemærk

    Hvis du vil have mere at vide om at arbejde og håndtere fejl, skal du gå til Håndtering af fejl.

Bruge parametre

Oprettelse af dynamiske og fleksible forespørgsler er bedste praksis. Parametre i Power Query hjælper dig med at gøre dine forespørgsler mere dynamiske og fleksible. En parameter fungerer som en metode til nemt at gemme og administrere en værdi, der kan genbruges på mange forskellige måder. Men det bruges mere almindeligt i to scenarier:

  • Argument for trin – Du kan bruge en parameter som argument for flere transformationer, der er baseret på brugergrænsefladen.

    Vælg en parameter til transformationsargumentet.

  • Brugerdefineret funktionsargument – Du kan oprette en ny funktion ud fra en forespørgsel og referere til parametre som argumenterne for din brugerdefinerede funktion.

    Opret funktion.

De vigtigste fordele ved at oprette og bruge parametre er:

  • Centraliseret visning af alle dine parametre via vinduet Administrer parametre .

    Vinduet Administrer parametre.

  • Genbrug af parameteren i flere trin eller forespørgsler.

  • Gør det nemt og enkelt at oprette brugerdefinerede funktioner.

Du kan endda bruge parametre i nogle af argumenterne i dataconnectorerne. Du kan f.eks. oprette en parameter for servernavnet, når du opretter forbindelse til sql Server-databasen. Derefter kan du bruge denne parameter i dialogboksen SQL Server-database.

Dialogboksen SQL Server-database med parameter for servernavn.

Hvis du ændrer serverplaceringen, skal du bare opdatere parameteren for servernavnet, så opdateres dine forespørgsler.

Bemærk

Hvis du vil vide mere om oprettelse og brug af parametre, skal du gå til Brug af parametre.

Opret funktioner, der kan genbruges

Hvis du befinder dig i en situation, hvor du har brug for at anvende det samme sæt transformationer på forskellige forespørgsler eller værdier, kan det være en fordel at oprette en brugerdefineret funktion i Power Query, der kan genbruges så mange gange, du har brug for. En brugerdefineret funktion i Power Query er en tilknytning fra et sæt inputværdier til en enkelt outputværdi og oprettes ud fra oprindelige M-funktioner og -operatorer.

Lad os f.eks. sige, at du har flere forespørgsler eller værdier, der kræver det samme sæt transformationer. Du kan oprette en brugerdefineret funktion, der senere kan aktiveres i forhold til de forespørgsler eller værdier, du vælger. Denne brugerdefinerede funktion sparer dig tid og hjælper dig med at administrere dine transformationer på en central placering, som du kan ændre når som helst.

Brugerdefinerede funktioner i Power Query kan oprettes ud fra eksisterende forespørgsler og parametre. Forestil dig f.eks. en forespørgsel, der har flere koder som en tekststreng, og du vil oprette en funktion, der afkode disse værdier.

Liste over koder.

Du starter med at have en parameter, der har en værdi, der fungerer som et eksempel.

Kodeværdi for eksempelparameter.

Fra denne parameter opretter du en ny forespørgsel, hvor du anvender de transformationer, du har brug for. I dette tilfælde vil du opdele koden PTY-CM1090-LAX i flere komponenter:

  • Oprindelse = PTY
  • Destination = LAX
  • Flyselskab = CM
  • FlightID = 1090

Eksempel på transformeringsforespørgsel.

Du kan derefter transformere forespørgslen til en funktion ved at højreklikke på forespørgslen og vælge Opret funktion. Endelig kan du aktivere din brugerdefinerede funktion i en hvilken som helst af dine forespørgsler eller værdier, som vist på følgende billede.

Aktivering af en brugerdefineret funktion.

Efter nogle få transformationer kan du se, at du har nået det ønskede output og udnyttet logikken for en sådan transformation fra en brugerdefineret funktion.

Endelig outputforespørgsel efter aktivering af en brugerdefineret funktion.

Bemærk

Du kan få mere at vide om, hvordan du opretter og bruger brugerdefinerede funktioner i Power Query fra artiklen Brugerdefinerede funktioner.