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 ä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.
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.
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.
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.
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.
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.
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 .
Ä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 .
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 .
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.
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.
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 .
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.
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 .
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.
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 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.
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
LuckyTemplates Kalendertabell: Vad är det och hur man använder det
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.
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.
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.
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.
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.