Metodtips när du arbetar med Power Query

Den här artikeln innehåller några tips för att få ut mesta möjliga av din dataomvandlingsupplevelse i Power Query.

Välj rätt anslutningskontakt

Power Query erbjuder ett stort antal dataanslutningar. Dessa anslutningsappar sträcker sig från datakällor som TXT-, CSV- och Excel-filer till databaser som Microsoft SQL Server och populära SaaS-tjänster som Microsoft Dynamics 365 och Salesforce. Om du inte ser datakällan i fönstret Hämta data kan du alltid använda ODBC- eller OLEDB-anslutningsappen för att ansluta till datakällan.

Genom att använda den bästa anslutningen för uppgiften får du bästa möjliga upplevelse och prestanda. Om du till exempel använder SQL Server-anslutningsappen i stället för ODBC-anslutningsappen när du ansluter till en SQL Server-databas får du inte bara en bättre Get Data-upplevelse , utan SQL Server-anslutningsappen erbjuder även funktioner som kan förbättra din upplevelse och prestanda, till exempel frågedelegering. Mer information om frågedelegering finns i Översikt över frågeutvärdering och frågedelegering i Power Query.

Varje dataanslutning följer en standardupplevelse enligt beskrivningen i Hämta data. Den här standardiserade upplevelsen har en fas som kallas Förhandsgranskning av data. I det här steget får du ett användarvänligt fönster för att välja de data som du vill hämta från datakällan, om anslutningsappen tillåter det och en enkel dataförhandsgranskning av dessa data. Du kan till och med välja flera datauppsättningar från datakällan via fönstret Navigatör .

Skärmbild av ett exempel på navigeringsfönstret som visar var du väljer de data du behöver och fönstret för förhandsgranskning av data.

Anmärkning

Om du vill se en fullständig lista över tillgängliga anslutningsappar i Power Query går du till Anslutningsappar i Power Query.

Filtrera tidigt

Vi rekommenderar alltid att du filtrerar dina data i ett tidigt skede av frågan eller så tidigt som möjligt. Vissa anslutningar tar vara på dina filter genom frågesammanslagning, enligt beskrivningen i Översikt över frågeutvärdering och frågesammanslagning i Power Query. Det är också en bra idé att filtrera bort data som inte är relevanta för ditt fall. Med den här filtreringen kan du fokusera på din uppgift bättre genom att bara visa data som är relevanta i avsnittet för förhandsversion av data.

Du kan använda den automatiska filtermenyn som visar en distinkt lista över de värden som finns i kolumnen för att välja de värden som du vill behålla eller filtrera bort. Du kan också använda sökfältet för att hitta värdena i kolumnen.

Skärmbild av menyn Automatiskt filter i Power Query med kolumnvärdena framhävde.

Du kan också dra nytta av de typspecifika filtren, till exempel I föregående för en datum-, datetime- eller till och med datumtidszonkolumn.

Sceenshot av ett exempeltypspecifikt filter för en datumkolumn med föregående alternativ framhävt.

Dessa typspecifika filter kan hjälpa dig att skapa ett dynamiskt filter som alltid hämtar data som finns under det senaste x antalet sekunder, minuter, timmar, dagar, veckor, månader, kvartal eller år.

Skärmbild av dialogrutan Filterrader som visar filtret som är i det föregående datumspecifika filtret.

Anmärkning

Om du vill veta mer om att filtrera dina data baserat på värden från en kolumn går du till Filtrera efter värden.

Håller dyra åtgärder länge?

Vissa åtgärder kräver att du läser den fullständiga datakällan för att returnera resultat och därför är det långsamt att förhandsgranska i Power Query-redigeraren. Om du till exempel utför en sortering är det möjligt att de första sorterade raderna är i slutet av källdata. För att returnera resultat måste sorteringsåtgärden först läsa alla rader.

Andra åtgärder (till exempel filter) behöver inte läsa alla data innan du returnerar några resultat. I stället fungerar de över data på ett så kallat "strömmande" sätt. Data "strömmar" förbi och resultaten returneras under processen. I Power Query-redigeraren behöver sådana åtgärder bara läsa tillräckligt med källdata för att fylla i förhandsversionen.

När det är möjligt utför du sådana strömningsåtgärder först och utför eventuella dyrare åtgärder sist. Genom att utföra åtgärder i den här ordningen kan du minimera den tid du lägger på att vänta på att förhandsversionen ska återges varje gång du lägger till ett nytt steg i frågan.

Arbeta tillfälligt mot en delmängd av dina data

Om det går långsamt att lägga till nya steg i frågan i Power Query-redigeraren bör du först utföra åtgärden "Behåll de första raderna" och begränsa antalet rader som du arbetar mot. När du har lagt till alla steg du behöver tar du sedan bort steget "Behåll de första raderna".

Använda rätt datatyper

Vissa funktioner i Power Query är kontextuella för datatypen för den valda kolumnen. När du till exempel väljer en datumkolumn kan de tillgängliga alternativen under kolumnen Datum och tid i menyn Lägg till kolumn användas. Men om kolumnen inte har någon datatypsuppsättning är dessa alternativ nedtonade.

Skärmbild av menyfliksområdet Power Query som visar typspecifika alternativ på menyn Lägg till kolumn.

En liknande situation uppstår för de typspecifika filtren, eftersom de är specifika för vissa datatyper. Om din kolumn inte har rätt datatyp definierad är dessa typspecifika filter inte tillgängliga.

Skärmbild av de typspecifika filtren för en datumkolumn.

Det är viktigt att du alltid arbetar med rätt datatyper för dina kolumner. När du arbetar med strukturerade datakällor, till exempel databaser, hämtas datatypsinformationen från tabellschemat som finns i databasen. Men för ostrukturerade datakällor som TXT- och CSV-filer är det viktigt att du anger rätt datatyper för kolumnerna som kommer från datakällan. Som standard erbjuder Power Query en automatisk identifiering av datatyper för ostrukturerade datakällor. Du kan läsa mer om den här funktionen och hur den kan hjälpa dig i Datatyper.

Anmärkning

Mer information om vikten av datatyper och hur du arbetar med dem finns i Datatyper.

Utforska dina data

Innan du börjar förbereda dina data och lägga till nya transformeringssteg rekommenderar vi att du gör det möjligt för Power Query-dataprofileringsverktygen att enkelt identifiera information om dina data.

Skärmbild av verktygen för dataförhandsgranskning eller dataprofilering i Power Query.

Dessa dataprofileringsverktyg hjälper dig att bättre förstå dina data. Verktygen ger dig små visualiseringar som visar information per kolumn, till exempel:

  • Kolumnkvalitet – Ger ett litet stapeldiagram och tre indikatorer med en representation av hur många värden i kolumnen som faller under kategorierna giltiga värden, fel eller tomma värden.
  • Kolumndistribution – Innehåller en uppsättning visuella objekt under namnen på kolumnerna som visar frekvensen och fördelningen av värdena i var och en av kolumnerna.
  • Kolumnprofil – Ger en mer detaljerad vy över din kolumn och den statistik som är associerad med den.

Du kan också interagera med dessa funktioner, vilket hjälper dig att förbereda dina data.

Skärmbild som visar hovringsalternativen för datakvalitet.

Anmärkning

Mer information om dataprofileringsverktygen finns i Dataprofileringsverktyg.

Dokumentera ditt arbete

Vi rekommenderar att du dokumenterar dina frågor genom att byta namn på eller lägga till en beskrivning i dina steg, frågor eller grupper som du tycker passar.

Power Query skapar automatiskt ett stegnamn åt dig i fönstret Tillämpade steg, men du kan också byta namn på dina steg eller lägga till en beskrivning i någon av dem.

Skärmbild av det tillämpade stegfönstret med dokumenterade steg och tillagda beskrivningar.

Anmärkning

Om du vill veta mer om alla tillgängliga funktioner och komponenter som finns i fönstret tillämpade steg går du till Använd listan Tillämpade steg.

Ta ett modulärt tillvägagångssätt

Det är fullt möjligt att skapa en enda fråga som innehåller alla transformeringar och beräkningar som du kan behöva. Men om frågan innehåller ett stort antal steg kan det vara en bra idé att dela upp frågan i flera frågor, där en fråga refererar till nästa. Målet med den här metoden är att förenkla och frikoppla omvandlingsfaser i mindre delar så att de blir lättare att förstå.

Anta till exempel att du har en fråga med de nio stegen som visas i följande bild.

Skärmbild av det tillämpade stegfönstret med dokumenterade steg och med beskrivningarna tillagda.

Du kan dela upp den här frågan i två delar vid steget Slå samman med priser i tabellen. På så sätt är det lättare att förstå de steg som tillämpades på försäljningsfrågan före sammanfogningen. För att utföra den här åtgärden högerklickar du på Merge with Prices table-steget och väljer alternativet Extrahera tidigare steg.

Skärmbild av snabbmenyn för tillämpade steg med "Extrahera föregående steg" framhävt.

Du uppmanas sedan med en dialogruta att ge den nya frågan ett namn. Det här steget delar effektivt upp frågan i två frågor. En fråga innehåller alla frågor före sammanfogningen. Den andra frågan har ett första steg som refererar till din nya fråga och resten av stegen som du hade i den ursprungliga frågan från och med steget Slå samman med priser tabell och nedåt.

Skärmbild av den ursprungliga frågan efter extraheringsåtgärden för föregående steg.

Du kan också använda frågereferenser som du ser lämpligt. Men det är en bra idé att hålla dina frågor på en nivå som inte verkar skrämmande vid första anblicken med så många steg.

Anmärkning

Mer information om frågereferenser finns i Förstå frågefönstret.

Skapa grupper

Ett bra sätt att hålla ditt arbete organiserat är genom att använda grupper i frågefönstret.

Skärmbild av snabbmenyn i frågefönstret som visar hur du arbetar med grupper i Power Query.

Det enda syftet med grupper är att hjälpa dig att hålla ditt arbete organiserat genom att fungera som mappar för dina frågor. Du kan skapa grupper inom grupper om du behöver det. Det är lika enkelt att flytta frågor mellan grupper som att dra och släppa.

Försök att ge dina grupper ett meningsfullt namn som passar dig och ditt fall.

Anmärkning

Om du vill veta mer om alla tillgängliga funktioner och komponenter som finns i frågefönstret går du till Förstå frågefönstret.

Framtidssäkra frågor

Säkerställ att du formulerar en fråga som fungerar utan problem vid framtida uppdateringar, det borde vara högsta prioritet. Det finns flera funktioner i Power Query för att göra frågan motståndskraftig mot ändringar och kan uppdateras även när vissa komponenter i datakällan ändras.

Det är en bra idé att definiera frågans omfattning för vad den ska göra och vad den ska ta hänsyn till när det gäller struktur, layout, kolumnnamn, datatyper och andra komponenter som du anser vara relevanta för omfånget.

Några exempel på transformeringar som kan hjälpa dig att göra frågan motståndskraftig mot ändringar är:

  • Om frågan har ett dynamiskt antal rader med data, men ett fast antal rader som fungerar som sidfot som ska tas bort, kan du använda funktionen Ta bort nedersta rader .

    Anmärkning

    Om du vill veta mer om hur du filtrerar dina data efter radposition går du till Filtrera en tabell efter radposition.

  • Om frågan har ett dynamiskt antal kolumner, men du bara behöver välja specifika kolumner från datauppsättningen, kan du använda funktionen Välj kolumner .

    Anmärkning

    Om du vill veta mer om att välja eller ta bort kolumner går du till Välj eller ta bort kolumner.

  • Om frågan har ett dynamiskt antal kolumner och du bara behöver avpivot en delmängd av kolumnerna kan du använda funktionen unpivot endast valda kolumner .

    Anmärkning

    Om du vill veta mer om alternativen för att avpivot dina kolumner går du till Unpivot-kolumner.

  • Om frågan har ett steg som ändrar datatypen för en kolumn, men vissa celler ger fel eftersom värdena inte överensstämmer med den önskade datatypen, kan du ta bort de rader som gav felvärden.

    Anmärkning

    Mer information om hur du arbetar och hanterar fel finns i Hantera fel.

Använda parametrar

Det är bra att skapa frågor som är dynamiska och flexibla. Parametrar i Power Query hjälper dig att göra dina frågor mer dynamiska och flexibla. En parameter fungerar som ett sätt att enkelt lagra och hantera ett värde som kan återanvändas på många olika sätt. Men det används oftare i två scenarier:

  • Stegargument: Du kan använda en parameter som argument för flera transformeringar som drivs från användargränssnittet.

    Skärmbild av dialogrutan Filtrera rader med alternativet Välj en parameter inställd för transformeringsargumentet.

  • Anpassad funktionsargument: Du kan skapa en ny funktion från en fråga och använda parametrar som argument för din anpassade funktion.

    Skärmbild av snabbmenyn Frågor Alternativet Skapa funktion framhävd och dialogrutan Skapa funktion.

De största fördelarna med att skapa och använda parametrar är:

  • Centraliserad vy över alla parametrar genom fönstret Hantera parametrar .

    Skärmbild av listrutan Hantera parametrar med ny parameter framhävd och dialogrutan Hantera parametrar.

  • Återanvändning av parametern i flera steg eller frågor.

  • Gör skapandet av anpassade funktioner enkelt och smidigt.

Du kan till och med använda parametrar i några av argumenten för dataanslutningarna. Du kan till exempel skapa en parameter för servernamnet när du ansluter till SQL Server-databasen. Sedan kan du använda parametern i dialogrutan SQL Server-databas.

Skärmbild av dialogrutan SQL Server-databas med en parameteruppsättning för servernamn.

Om du ändrar din serverplats behöver du bara uppdatera parametern för servernamnet och dina frågor uppdateras.

Anmärkning

Mer information om hur du skapar och använder parametrar finns i Använda parametrar.

Skapa återanvändbara funktioner

Du kan hamna i en situation där du behöver tillämpa samma uppsättning transformeringar på olika frågor eller värden. I det här fallet kan det vara fördelaktigt att skapa en anpassad Power Query-funktion som kan återanvändas så många gånger som du behöver. En anpassad Power Query-funktion är en mappning från en uppsättning indatavärden till ett enda utdatavärde och skapas från interna M-funktioner och operatorer.

Anta till exempel att du har flera frågor eller värden som kräver samma uppsättning transformeringar. Du kan skapa en anpassad funktion som senare kan anropas mot valfria frågor eller värden. Den här anpassade funktionen sparar tid och hjälper dig att hantera din uppsättning transformeringar på en central plats, som du kan ändra när som helst.

Anpassade Power Query-funktioner kan skapas från befintliga frågor och parametrar. Tänk dig till exempel en fråga som har flera koder som en textsträng och som du vill skapa en funktion som avkodar dessa värden.

Skärmbild av den ursprungliga listan över flygdatakoder.

Du börjar med att ha en parameter med ett värde som fungerar som ett exempel.

Skärmbild av dialogrutan Hantera parametrar med exempelparameterkodvärdena angivna.

Från den parametern skapar du en ny fråga där du tillämpar de transformeringar som du behöver. I det här fallet vill du dela upp koden PTY-CM1090-LAX- i flera komponenter:

  • Ursprung = PTY
  • Mål = LAX
  • Flygbolag = CM
  • FlightID = 1090

Skärmbild av exempeltransformeringsfrågan med varje del i sin egen kolumn.

Du kan sedan omvandla frågan till en funktion genom att högerklicka på frågan och välja Skapa funktion. Slutligen kan du anropa din anpassade funktion i någon av dina frågor eller värden.

Skärmbild av listan med koder med värdena för anropa anpassad funktion ifyllda.

Efter några fler transformeringar kan du se att du har nått önskade utdata och tillämpat logiken för en sådan transformering från en anpassad funktion.

Skärmbild som visar den slutliga utdatafrågan när du har anropat en anpassad funktion.

Anmärkning

Mer information om hur du skapar och använder anpassade funktioner i Power Query finns i artikeln Anpassade funktioner.