RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

RANKX er en veldig unik DAX-funksjon som krever et dypere nivå av tenkning  rundt sin logikk og hvordan den faktisk fungerer når du kjører en beregning i en bestemt kontekst (for eksempel en tabell eller et diagram inne i LuckyTemplates). Du kan se hele videoen av denne opplæringen nederst på denne bloggen.

Det du ikke ønsker med RANKX DAX-funksjonen er å begynne å motta resultater og egentlig ikke forstå hvordan de beregnes fordi du alltid kan ha feilaktige beregninger og resultater som vises i rapportene dine.

Hver annen parameter innenforfunksjon kan endre måten den beregner et resultat på. Det er flere parametere du kan legge inn i denne DAX-funksjonen for å forstå hvordan hver enkelt kan bestemme det underliggende resultatet, som anses som viktig.

Det er derfor det er viktig å forstå nøkkelelementene og konseptene for hvordan RANKX fungerer i en rekke sammenhenger. Dette vil gjøre deg i stand til å være sikker på at beregningene dine er korrekte og at forbrukerne ser på innsikt som faktisk gir mening.

I denne opplæringen skal jeg diskutere hvordan denne spesielle formelen og funksjonen kan brukes. 

Innholdsfortegnelse

Eksempel på grunnleggende RANKX-scenario

Her er et eksempelscenario for en enkel RANKX -beregning. Først, la oss ta en titt på tabellen fra venstre.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Det vi prøver å gjøre her er å identifisere rangeringen av disse produktene basert på salg (dette kan også være basert på et hvilket som helst mål) på tvers av alle de forskjellige produktene vi selger. 

Bruk av ALL-funksjonen i RANKX DAX-beregning

La oss nå ta en titt på den nåværende formelen for dette spesielle scenariet.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Primært må vi lage en tabell inne i RANKX DAX -funksjonen for å evaluere hvert enkelt produkt basert på målet vi spesifiserte.

ALL - funksjonen ble brukt her for å fjerne ethvert filter fra produkttabellen . Dette er fordi vi må evaluere hvert enkelt produkt og se hvorfor hvert enkelt produkt rangerer basert på alle produktene. 

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Men hvis vi fjerner filteret (i dette tilfellet ALL- funksjonen), og bare bruker " Produkter ", vil det vise et annet resultat.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Som du kan se, ble det nettopp evaluert til 1 . Dette er fordi det kun ser på det gjeldende produktet i den aktuelle konteksten (i dette tilfellet produkt 63 ). Følgelig vil alt bli rangert som 1. fordi dette bokstavelig talt er det eneste produktet i tabellen som RANKX vurderer over. Og det er hovedsakelig derfor vi må bruke ALL- funksjonen for å få riktig resultat.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Nå, det er hvordan du kan løse enkle RANKX- beregninger.       

Men hva om det blir mer komplisert? Hva om du trenger rangeringsresultater som ikke bare er basert på totalt salg ?

Vel, det er der vi må forstå den nåværende konteksten for denne beregningen. Vi trenger å vite hvordan vi kan manipulere konteksten for å få det resultatet vi ønsker.

Eksempel på kompleks RANKX-scenario

La oss prøve å få inn nøyaktig lignende formel ( produktrangeringsmål ) i tabellen på høyre side.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Som du kan se, har det gitt oss nok et feilaktig resultat. Årsaken bak dette er fordi vi også har en kundenavn- kolonne her.

Hvis vi ser på formelen igjen, vil du se at den ikke bryter ut hver enkelt kunde . Vi vurderer kun produktene for hver enkelt kunde.

La oss prøve å sortere ut kolonnen Kundenavn .

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Selv om vi sorterer ut Kundenavn-kolonnen , vil produktrangeringen fortsatt endres basert på rangeringen av produktet de kjøpte .

Som du kan se her, er det mange tall som er like. Et eksempel er rang 17 . I dette tilfellet kan det være fordi denne kunden kun har kjøpt 17 produkter .

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Nå, det er kanskje det du trenger i dette scenariet. Men hva om du trenger noe litt mer komplekst enn det? Hva om du trenger rangeringen fra 1 til en ubestemt verdi for kundenavn- og produktkontekstene ?

Som jeg har understreket, er det viktig å forstå konteksten og hvordan vi manipulerer konteksten for å få det resultatet vi ønsker.

Bruke CROSSJOIN-funksjonen

For øyeblikket har vi to dimensjoner som er fra to helt forskjellige tabeller. Når du bytter til modellvisning , vil du se at kolonnen Kundenavn kommer fra Kunder- tabellen og Produktnavn- kolonnen kommer fra Produkttabellen .

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Så vi må på en eller annen måte fjerne filtre på denne virtuelle tabellen inne i RANKX- logikken fra begge de to tabellene.

Vi må gjøre det vi gjorde i den første tabellen (venstre side), men vi må gjøre det på tvers av både kundenavn- og produktnavn - kolonnene i begge tabellene.

Så vil vi etter hvert få riktig rangering via Totalt salg av kundenavn og produktnavn . Her er formelen vi kan bruke for dette distinkte scenariet.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Dettefunksjon lar oss slå sammen to kolonner, eller det kan også være to tabeller. Men i dette tilfellet vil vi bare slå sammen kolonner.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

For å gå nærmere inn på detaljer, er det vi prøver å gjøre i denne delen hovedsakelig å fjerne alle filtrene fra både Kunder- og Produkttabeller .

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Deretter går vi gjennom hver enkelt rad i denne virtuelle tabellen og evaluerer eller identifiserer hvor den spesielle rangeringen for dette bestemte undersettet av kundenavn og produktnavn er.

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Hvis du sjekker ut resultatene, vil du se at vi endelig har den nøyaktige rangeringen. Og også, hvis du la merke til, er det to rader i 4. rangering . Dette er fordi de begge har nøyaktig samme totale salg .

RANKX-betraktninger – Lucky-maler og DAX-formelkonsepter

Og det er slik vi oppnådde resultatene vi ønsker å oppnå i dette spesielle scenariet.

Konklusjon

Nå er det bare noen av hensynene når vi bruker RANKX -funksjonen i DAX- beregninger som vi ønsker å dekke i denne opplæringen. Det er så mange måter du kan gjøre det i så mange forskjellige funksjoner. Men nøkkelen her er at du virkelig trenger å forstå konteksten der RANKX -funksjonen din plasseres i. 

Dette er definitivt den beste måten å demonstrere RANKX på , spesielt når det kommer til allsidigheten i beregningen av enhver rangeringstypeanalyse. Du vil bli overrasket over hvor fleksibel RANKX-funksjonen kan være inne i LuckyTemplates.

Den kan brukes i en rekke forskjellige scenarier. I tillegg muliggjør det noen avanserte innsikter som til slutt vil imponere forbrukerne av rapportene og visualiseringene dine.

Lykke til med å anmelde denne.












Pipe In R: Koblingsfunksjoner med Dplyr

Pipe In R: Koblingsfunksjoner med Dplyr

I denne opplæringen lærer du hvordan du kobler funksjoner sammen ved å bruke dplyr-røroperatøren i programmeringsspråket R.

RANKX Deep Dive: A LuckyTemplates DAX-funksjon

RANKX Deep Dive: A LuckyTemplates DAX-funksjon

RANKX fra LuckyTemplates lar deg returnere rangeringen til et spesifikt tall i hver tabellrad som utgjør en del av en liste med tall.

Trekker ut LuckyTemplates-temaer og bilder fra PBIX

Trekker ut LuckyTemplates-temaer og bilder fra PBIX

Lær hvordan du demonterer en PBIX-fil for å trekke ut LuckyTemplates-temaer og bilder fra bakgrunnen og bruke den til å lage rapporten din!

Excel Formulas Cheat Sheet: Mellomveiledning

Excel Formulas Cheat Sheet: Mellomveiledning

Excel Formulas Cheat Sheet: Mellomveiledning

LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det

LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det

LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det

Python i LuckyTemplates: Hvordan installere og sette opp

Python i LuckyTemplates: Hvordan installere og sette opp

Lær hvordan du installerer programmeringsspråket Python i LuckyTemplates og hvordan du bruker verktøyene til å skrive koder og vise visuelle elementer.

Beregning av dynamiske fortjenestemarginer – enkel analyse av LuckyTemplates med DAX

Beregning av dynamiske fortjenestemarginer – enkel analyse av LuckyTemplates med DAX

Lær hvordan du beregner dynamiske fortjenestemarginer ved siden av LuckyTemplates og hvordan du kan få mer innsikt ved å grave dypere inn i resultatene.

Sortering av datotabellkolonner i LuckyTemplates

Sortering av datotabellkolonner i LuckyTemplates

Lær hvordan du sorterer feltene fra kolonner med utvidet datotabell på riktig måte. Dette er en god strategi å gjøre for vanskelige felt.

Finn dine beste produkter for hver region i LuckyTemplates ved å bruke DAX

Finn dine beste produkter for hver region i LuckyTemplates ved å bruke DAX

I denne artikkelen går jeg gjennom hvordan du kan finne de beste produktene dine per region ved å bruke DAX-beregninger i LuckyTemplates, inkludert TOPN- og CALCUATE-funksjonene.

Søppeldimensjon: Hva er det og hvorfor det er alt annet enn søppel

Søppeldimensjon: Hva er det og hvorfor det er alt annet enn søppel

Lær hvordan du bruker en søppeldimensjon for flagg med lav kardinalitet som du ønsker å inkludere i datamodellen din på en effektiv måte.