RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

RANKX är en mycket unik DAX-funktion som kräver ett djupare tänkande  kring dess logik och hur det faktiskt fungerar när man kör en beräkning i ett visst sammanhang (till exempel en tabell eller ett diagram inuti LuckyTemplates). Du kan se hela videon av denna handledning längst ner på den här bloggen.

Vad du inte vill med RANKX DAX-funktionen är att börja ta emot resultat och inte riktigt förstå hur de beräknas eftersom du alltid kan ha felaktiga beräkningar och resultat som visas i dina rapporter.

Varje annan parameter inomfunktion kan ändra sättet på vilket den beräknar ett resultat. Det finns flera parametrar som du kan mata in i denna DAX-funktion för att förstå hur var och en kan bestämma det underliggande resultatet, vilket anses viktigt.

Det är därför det är viktigt att förstå nyckelelementen och koncepten för hur RANKX fungerar i en mängd olika sammanhang. Detta gör att du kan vara säker på att dina beräkningar är korrekta och att dina konsumenter ser insikter som faktiskt är vettiga.

I den här handledningen kommer jag att diskutera hur just denna formel och funktion kan användas. 

Innehållsförteckning

Exempel på grundläggande RANKX-scenario

Här är ett exempelscenario för en enkel RANKX -beräkning. Låt oss först titta på tabellen från vänster.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Det vi försöker göra här är att identifiera rankningen av dessa produkter baserat på försäljning (detta kan också baseras på vilket mått som helst) för alla olika produkter som vi säljer. 

Använda ALLA-funktionen inom RANKX DAX-beräkning

Låt oss nu ta en titt på den aktuella formeln för just detta scenario.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

I första hand måste vi skapa en tabell i RANKX DAX -funktionen för att utvärdera varje enskild produkt baserat på det mått som vi angav.

ALL - funktionen användes här för att ta bort alla filter från produkttabellen . Detta beror på att vi måste utvärdera varje enskild produkt och se varför varje enskild produkt rankas baserat på alla produkter. 

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Men om vi tar bort filtret (i det här fallet ALL -funktionen) och bara använder " Produkter ", kommer det att visa ett annat resultat.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Som du kan se har den precis utvärderats till 1 . Detta beror på att det bara tittar på den aktuella produkten i det aktuella sammanhanget (i detta fall, produkt 63 ). Följaktligen kommer allt att rankas 1:a eftersom detta bokstavligen är den enda produkten i tabellen som RANKX utvärderar över. Och det är främst därför vi behöver använda ALL- funktionen för att få rätt resultat.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Nu är det så du kan lösa enkla RANKX -beräkningar.       

Men tänk om det blir mer komplicerat? Vad händer om du behöver rankningsresultat som inte bara baseras på total försäljning ?

Tja, det är där vi måste förstå det aktuella sammanhanget för denna beräkning. Vi behöver veta hur vi kan manipulera sammanhanget för att få det resultat vi vill ha.

Exempel på komplext RANKX-scenario

Låt oss försöka ta in den exakt liknande formeln ( Produktrankningsmått ) i tabellen på höger sida.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Som du kan se har det gett oss ytterligare ett felaktigt resultat. Anledningen till detta är att vi också har en kolumn Kundnamn här.

Om vi ​​tittar på formeln igen ser du att den inte bryter ut varje enskild kund . Vi utvärderar endast produkterna för varje specifik kund.

Låt oss försöka reda ut kolumnen Kundnamn .

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Även om vi sorterar ut kolumnen Kundnamn kommer produktrankningen fortfarande att ändras baserat på rankningen av produkten som de köpte .

Som du kan se här finns det massor av siffror som är lika. Ett exempel är rank 17 . I det här fallet kan det bero på att just den här kunden bara har köpt 17 produkter .

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Nu är det kanske vad du behöver i det här scenariot. Men vad händer om du behöver något lite mer komplext än så? Vad händer om du behöver rangordningen från 1 till ett obestämt värde för Kundnamn och Produktkontexter ?

Som jag har betonat är det viktigt att förstå sammanhanget och hur vi manipulerar sammanhanget för att få det resultat vi vill ha.

Använda funktionen CROSSJOIN

För närvarande har vi två dimensioner som är från två helt olika tabeller. När du byter till modellvy ser du att kolumnen Kundnamn kommer från tabellen Kunder och kolumnen Produktnamn kommer från tabellen Produkter .

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Så vi måste på något sätt ta bort filter på denna virtuella tabell inuti RANKX -logiken från båda de två tabellerna.

Vi måste göra vad vi gjorde i den första tabellen (vänster sida), men vi måste göra det över både kundnamn och produktnamn kolumner i båda specifika tabellerna.

Så småningom kommer vi att få rätt rankning via Total försäljning av kundnamn och produktnamn . Här är formeln som vi kan använda för detta distinkta scenario.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Dettafunktionen låter oss sammanfoga två kolumner, eller det kan också vara två tabeller. Men i det här fallet kommer vi bara att slå samman kolumner.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

För att gå vidare in i detaljer, vad vi försöker göra i den här delen är bara att ta bort alla filter från både kund- och produkttabeller .

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Sedan går vi igenom varje enskild rad i den här virtuella tabellen och utvärderar eller identifierar var den speciella rankningen för just denna undergrupp av kundnamn och produktnamn är.

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Om du kollar in resultaten ser du här att vi äntligen har den korrekta rankningen. Och även, om du märkte det, finns det två rader i den fjärde rangen . Detta beror på att de båda har exakt samma totala försäljning .

RANKX-överväganden – LuckyTemplates och DAX-formelkoncept

Och det är så vi uppnådde de resultat som vi vill uppnå i just detta scenario.

Slutsats

Nu, det är bara några av övervägandena när vi använder RANKX -funktionen i DAX- beräkningar som vi vill täcka i den här handledningen. Det finns så många sätt att du kan göra det i så många olika funktioner. Men det viktigaste här är att du verkligen behöver förstå sammanhanget där din RANKX -funktion placeras i. 

Detta är definitivt det bästa sättet att demonstrera RANKX , särskilt när det kommer till dess mångsidighet vid beräkning av vilken rankningstypsanalys som helst. Du kommer att bli förvånad över hur flexibel RANKX-funktionen kan vara i LuckyTemplates.

Det kan användas i ett antal olika scenarier. Dessutom möjliggör det vissa avancerade insikter som i slutändan kommer att imponera på konsumenterna av dina rapporter och visualiseringar.

Lycka till med att recensera denna.












Pipe In R: Anslutningsfunktioner med Dplyr

Pipe In R: Anslutningsfunktioner med Dplyr

I den här handledningen kommer du att lära dig hur du kopplar ihop funktioner med hjälp av dplyr-röroperatorn i programmeringsspråket R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX från LuckyTemplates låter dig returnera rankningen av ett specifikt nummer i varje tabellrad som utgör en del av en lista med nummer.

Extrahera LuckyTemplates-teman och bilder från PBIX

Extrahera LuckyTemplates-teman och bilder från PBIX

Lär dig hur du tar isär en PBIX-fil för att extrahera LuckyTemplates-teman och bilder från bakgrunden och använda den för att skapa din rapport!

Excel Formler Fuskblad: Mellanvägledning

Excel Formler Fuskblad: Mellanvägledning

Excel Formler Fuskblad: Mellanvägledning

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

Python i LuckyTemplates: Hur man installerar och ställer in

Python i LuckyTemplates: Hur man installerar och ställer in

Lär dig hur du installerar programmeringsspråket Python i LuckyTemplates och hur du använder dess verktyg för att skriva koder och visa bilder.

Beräkna dynamiska vinstmarginaler – enkel analys av LuckyTemplates med DAX

Beräkna dynamiska vinstmarginaler – enkel analys av LuckyTemplates med DAX

Lär dig hur du beräknar dynamiska vinstmarginaler vid sidan av LuckyTemplates och hur du kan få fler insikter genom att gräva djupare i resultaten.

Sortering av datumtabellkolumner i LuckyTemplates

Sortering av datumtabellkolumner i LuckyTemplates

Lär dig hur du sorterar fälten från en utökad datumtabells kolumner korrekt. Detta är en bra strategi att göra för svåra fält.

Hitta dina bästa produkter för varje region i LuckyTemplates med DAX

Hitta dina bästa produkter för varje region i LuckyTemplates med DAX

I den här artikeln går jag igenom hur du kan hitta dina toppprodukter per region med hjälp av DAX-beräkningar i LuckyTemplates, inklusive TOPN- och CALCULATE-funktionerna.

Skräpdimension: Vad är det och varför det är allt annat än skräp

Skräpdimension: Vad är det och varför det är allt annat än skräp

Lär dig hur du använder en skräpdimension för flaggor med låg kardinalitet som du vill infoga i din datamodell på ett effektivt sätt.