LuckyTemplates tilpasset sortering ved hjelp av DAX

Mange tror at vi ikke kan utføre tilpasset sortering ved hjelp av DAX , men det er ikke sant. DAX kan absolutt garantere sortering, og det er faktisk ganske enkelt å gjøre. I dagens blogg skal jeg vise deg hvordan du enkelt kan gjøre akkurat det. Du kan se hele videoen av denne opplæringen nederst på denne bloggen.

Innholdsfortegnelse

Vår datamodell

La oss starte med en enkel datamodell. Datatabellen vår har tre kampanjer, analysert ROI og kostnad. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Som du kan se i tabellen, har de de samme kostnadene, men avkastningen deres er forskjellig. Konseptet her er å vite hvilke kampanjer vi bør kjøre avhengig av deres ROI for et gitt budsjett. 

LuckyTemplates tilpasset sortering: Bruk av While-løkken

La oss starte med et mål med en enkel while-løkke. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi setter budsjettet vårt til 20 000 og lagrer det i Budsjett-variabelen ved å bruke _Budget.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Og så bruker vi while-løkken ved å lage en tabellvariabel VAR_Table

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi bruker dasom går mot vår basistabell 4 og legger til en løpende totalkolonne ved å bruke "_RT" .

LuckyTemplates tilpasset sortering ved hjelp av DAX

Deretter henter vi [Analyzed ROI] i vår nåværende rad lagret som VAR_ROI . Deretter tar vi budsjettet vårt . Fra den trekker vi fra, filtrer tabell 4 for den analyserte ROI som er større enn eller lik ROI som vi henter for vår nåværende rad, og ta [Cost]

LuckyTemplates tilpasset sortering ved hjelp av DAX

Disse linjene vil ta den høyeste avkastningen i den første raden, deretter den nest høyeste for den neste raden, og så videre. Så i hovedsak vil vi ha en kolonne som er en løpende total som teller ned til null i negative.

Så går vi ut av while-løkken. Vi lager FinalTable-variabelen vår med VAR_FinalTable , hvor vi ganske enkelt filtrerer tabellvariabelen vår for den løpende totalen som er større enn eller lik null. Vi bruker dette filteret fordi alt under null betyr at vi har blitt negative og at vi er utenfor budsjettet.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Da kan vi bruke for disse verdiene. Vi tar med kolonnene våre – Kampanjer, analysert avkastning og kostnad – og legger til .

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi kan vise denne kortvisualen i utvalgsruten og se at vi har Instagram og SEM, som er våre to høyeste avkastninger.

LuckyTemplates tilpasset sortering ved hjelp av DAX

La oss sjekke den opprinnelige tabellen vår for å sammenligne resultatene.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi kan se at PPC faktisk har en lavere ROI enn SEM og Instagram. 

Men som du kanskje har lagt merke til, kom ikke resultatet vårt tilbake i riktig rekkefølge, med Instagrams 8.1 som vises først før SEMs 8.15. 

Bruk av LuckyTemplates sorteringsrekkefølge

Men hva om vi vil at Instagram skal returneres først fordi det har den høyeste ROI og SEM som skal returneres som nummer to? I utgangspunktet ønsker vi å garantere sorteringsrekkefølge. Dette blir litt vanskelig, men det er ikke vanskelig å forstå hvordan man gjør det.

Slik skal funksjonen vår se ut, med den nederste delen som er den samme som while-løkken vi hadde tidligere.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Og for å garantere sorteringsrekkefølge må vi gjøre litt ekstra arbeid. 

Igjen starter vi med vårt VAR_Budget som vi setter til 20000. Deretter lager vi vår Count-variabel ved å bruke VAR_Count I og bruker på tabell 4. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

I neste linje vil vi bruke CONCATENATEX -funksjonen til å sette sammen kolonnene Kampanjer, Analysert ROI og Kostnad. Du kan bruke hva som helst som skilletegn så lenge det ikke er i dataene dine, så i dette tilfellet, la oss bare bruke stjerner. 

Deretter bruker vi et rørtegn (|) i den neste parameteren etter kostnadskolonnen. Vi bruker også VAR_Ordered for å sortere etter den analyserte avkastningen i synkende rekkefølge, noe som betyr at den høyeste avkastningen vil være øverst.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Hvis vi ser på kommentarlinjen, står det at koden vil gi oss resultatet i formatet SEM*8.158*10000 | Instagram*8,1*10000 . Det vil også komme ut i rekkefølgen av høyeste ROI til laveste ROI. 

LuckyTemplates Egendefinert sortering: Brukes for Loop

Dette eksemplet er interessant fordi vi får en , while-løkke, og alle slags kule funksjoner. Denne gangen bruker vi for-løkken

Tabell 1

For dette eksemplet er Tabell1 vår for-løkke, og det vi gjør er ADDCOLUMNS tilsom går fra en til vår telling med en skrevet som (1,_Count,1).

I vår rad bruker vi dafordi vi bruker pipetegnet for å skille radene i tabellen. Ved å bruke PATHITEM griper vi deretter banen fra den Ordnede variabelen, som er strengen vår. 

Vi bruker også Value , som er vår automatiske kolonne som er opprettet med GENERATESERIES , eller våre kalendere 1, 2, 3, 4, 5, til vi har brukt opp antallet rader vi har i tabellen vår. Deretter returnerer vi den tilbake som tekst

LuckyTemplates tilpasset sortering ved hjelp av DAX

Det vi har nå er en garantert sorteringsrekkefølge for bordet vårt, som går fra høyeste ROI til laveste. Så her er din DAX for å garantere sorteringsrekkefølge. 

Tabell 2

Nå, for å få dette i et brukbart format, må vi gjøre tabell 2 der vi skal plukke ut de individuelle kolonnene fra strengen vår som vi har.

La oss bruke en annen ADDCOLUMNS for å legge til Tabell1, vår for-løkke. For Kampanjer oppretter du en kampanjekolonne og brukerå erstatte stjerner med rør. Deretter bruker vi PATHITEM på RowPath for å ta det første elementet og returnere det som TEKST.

LuckyTemplates tilpasset sortering ved hjelp av DAX

I kolonnen Analysert ROI vil vi i utgangspunktet gjøre det samme. ERSTATT stjerne med rør. Ta så tak i det andre elementet i vår vei og returner det som TEKST. Vi gjør dette fordi PATHITEM av en eller annen grunn lar oss returnere som heltall eller tekst, men ikke desimaltall.

Det er litt rart, men vi kan løse det fordi alt vi trenger å gjøre er å legge til null, og DAX vil automatisk konvertere TEXT-strengen til en numerisk verdi. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Igjen, vi gjør det samme for kostnadskolonnen . Vi bruker SUBSTITUTE og PATHITEM for å hente det tredje elementet. Så, for å returnere et tall, legger vi til null igjen fordi det er et helt tall i dette tilfellet.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Resten av koden vår er while-løkken som vi diskuterte tidligere. Det vi får nå er vår garanterte sorteringsrekkefølge fra høyeste til laveste kampanje. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vår SEM var vår høyest rangerte ROI for kampanjen vår, og Instagram er den andre. 




Konklusjon

Ved å bruke mens og for looper, brukte vi heldigvis tilpasset sortering av LuckyTemplates i datamodellen vår basert på deres ROI-er – et bevis på at DAX definitivt kan garantere sorteringsrekkefølge. 

Det er viktig å sikre at dataene dine er riktig sortert i DAX for å analysere og visualisere dem nøyaktig. Du kan bruke det du lærte i denne opplæringen for å sortere dataene dine på riktig måte for neste rapport.

Beste ønsker,

Greg Deckler


Hva er Power Query & M Language: En detaljert oversikt

Hva er Power Query & M Language: En detaljert oversikt

Denne opplæringen gir en oversikt over Power Query Editor og M-språket på LuckyTemplates-skrivebordet.

Lag en paginert rapport: Legge til tekster og bilder

Lag en paginert rapport: Legge til tekster og bilder

Lær hvordan du lager en paginert rapport, legger til tekster og bilder og deretter eksporterer rapporten til ulike dokumentformater.

SharePoint Automate-funksjonen | En introduksjon

SharePoint Automate-funksjonen | En introduksjon

Lær hvordan du bruker SharePoint-automatiseringsfunksjonen til å lage arbeidsflyter og hjelpe deg med å mikroadministrere SharePoint-brukere, -biblioteker og -lister.

Løs en dataanalyseutfordring med LuckyTemplates Accelerator

Løs en dataanalyseutfordring med LuckyTemplates Accelerator

Utvid rapportutviklingsferdighetene dine ved å bli med i en dataanalyseutfordring. Akseleratoren kan hjelpe deg å bli en LuckyTemplates-superbruker!

Løpende totaler i LuckyTemplates ved hjelp av DAX

Løpende totaler i LuckyTemplates ved hjelp av DAX

Lær hvordan du beregner løpende totaler i LuckyTemplates ved hjelp av DAX. Løpende totaler lar deg ikke bli fanget opp i et individuelt resultat.

LuckyTemplates Dax-variabler er konstante: Hva betyr dette?

LuckyTemplates Dax-variabler er konstante: Hva betyr dette?

Forstå konseptet med variabler i DAX i LuckyTemplates og implikasjonene av variabler for hvordan målene dine beregnes.

LuckyTemplates Slope Chart: En oversikt

LuckyTemplates Slope Chart: En oversikt

Lær mer om det tilpassede visuelle bildet kalt LuckyTemplates Slope-diagram, som brukes til å vise økning/reduksjon for en enkelt eller flere beregninger.

LuckyTemplates fargetemaer for enhetlige visualiseringer

LuckyTemplates fargetemaer for enhetlige visualiseringer

Oppdag fargetemaene i LuckyTemplates. Disse er avgjørende for at rapportene og visualiseringene dine skal se ut og fungere sømløst.

Beregne gjennomsnitt i LuckyTemplates: Isolere ukedag- eller helgeresultater ved hjelp av DAX

Beregne gjennomsnitt i LuckyTemplates: Isolere ukedag- eller helgeresultater ved hjelp av DAX

Å beregne et gjennomsnitt i LuckyTemplates kan gjøres på mange måter for å gi deg nøyaktig informasjon for bedriftsrapportene dine.

LuckyTemplates Theming | LuckyTemplates Desktop Standard Theming

LuckyTemplates Theming | LuckyTemplates Desktop Standard Theming

La oss fordype oss i Standard LuckyTemplates-tema, og gjennomgå noen av funksjonene som er innebygd i selve LuckyTemplates Desktop-applikasjonen.