Dummyvariabler: Hur man använder dem för att skriva smartare DAX

I den här handledningen kommer jag att prata om hur man använder dummyvariabler för att skriva bättre DAX-mått. Detta är särskilt tillämpligt i fall där mer komplex DAX behövs. Med denna teknik kan du vara mer flexibel när det gäller att hantera olika variabler och villkor. Du kan se hela videon av denna handledning längst ner på den här bloggen.

Jag bestämde mig för att göra den här handledningen på grund av en fråga som jag stötte på i.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Utifrån denna fråga ville Harvey kombinera en Pareto-analys med några ytterligare kriterier. Han ville titta på de översta 20 % av försäljningsrankningen och samtidigt titta på dess skärningspunkt med andra produkter som hade marginaler över en viss procent.

Innehållsförteckning

Utarbetande av lösning för försäljningsrankning och vinstmarginalavskärning

Baserat på de krav som Harvey nämnde skapade jag ett utkast till lösning som har reglage för försäljningsrankningen och vinstmarginalen .

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Beroende på parametrarna du ställer in på dessa reglage visar spridningsvisualiseringen de produkter som uppfyller båda kriterierna .

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Låt oss säga att försäljningsrankningen är A och vinstmarginalen är B . Detta visar i princip enskick. Detta kräver relativt vanliga DAX-mått. Dessa visas här i den högra rutan under åtgärder, där jag har Sales Rank , som använder en basic. Jag har också totala kostnader, totala vinster och andra variabler som får sina värden från reglagen.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Använda dummyvariabler för AND-villkor

När det gäller OCH- tillståndet är det denna åtgärd som gör det tunga lyftet.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Det finns ett par intressanta saker du kan lägga märke till i denna åtgärd. I grund och botten används dessa villkor vanligtvis i en/kriterier. Men istället för att göra det använde jag det jag kallar dummyvariabler där om villkoret är SANT får det en 1. Om det är FALSK får det en 0.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Så det här måttet visar att om försäljningsrankningen är mindre än eller lika med försäljningsrankningsgränsen, får den en 1. Om vinstmarginalen är större än vinstmarginalgränsen får den en 1. Annars får de en nolla.

Detta tillvägagångssätt är mycket vanligt inom statistisk analys och regressionsanalys men det kan också vara användbart när det kommer till DAX.

Jag använde den metoden eftersom jag behöver dessa värden för nästa del där jag kombinerar de två variablerna genom att multiplicera dem .

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

När de två dummyvariablerna Rnk och Marg har kombinerats kan jag gå vidare till nästa del av måttet. Om det kombinerade värdet är större än noll, tilldelade jag den röda färgen. Om den inte är det tilldelas den den blå färgen.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Använda dummyvariabler för ELLER-förhållanden

Vad händer om du vill använda detta tillvägagångssätt i enskick?

Du kan använda samma process, men när det kommer till steget där du kombinerar variablerna, använd ett plustecken istället för en asterisk .

ett OCH-villkor skulle kräva en asterisk så här:

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Ett ELLER-villkor skulle kräva ett plustecken så här:

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

När du trycker på acceptera, kommer det att tillämpa dessa villkor på punktdiagrammet. Produkterna som uppfyller dessa villkor kommer då att visas som dessa röda prickar här.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Varför dummyvariablerna fungerar

Om du undrar varför dessa dummyvariabler fungerar, har jag några diagram här som kan hjälpa.

Låt oss börja med OCH -villkoret.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

OCH antyder att båda eller alla villkor är SANT. Detta kännetecknas av multiplikation. När de multiplicerats, sätter alla FALSK-villkor hela termen till 0. Så om du har två variabler, A och B, och båda är sanna, skulle det ge en produkt av 1, vilket returnerar en TRUE.

Men om antingen A är lika med noll eller B är lika med noll, får du tre villkor där hela termen kommer att sluta med noll. Det är korsningen.

Om vi ​​å andra sidan tittar på OR-villkoret betyder det att endera eller något av villkoren är SANT. Istället för multiplikation kräver detta addition. Så ingen enskild FALSK uppsättning kommer att resultera till 0, men så länge ett villkor är sant, ökar det villkoret med 1.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Så i diagrammet för ELLER-villkoret, om både A och B är SANT så får termen en 2. Om A är falsk men B är sann, får den en 1. Det omvända får också en 1:a, medan du bara får en 0 om båda villkoren är falska.

Där dummyvariabler är användbara

Uppenbarligen kan du använda grundläggande OCH- eller ELLER-villkor för enkla fall. Men de kommer inte att fungera lika bra när det gäller mer komplexa fall. Här är ett exempel.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Detta fall visar sju variabler. Kombinationen av A, B och C är SANT. Så är kombinationerna av antingen D och E eller F och G.

Om du skulle skriva enför detta tillstånd kan du bara föreställa dig hur långdraget och rörigt det skulle bli. Men om du använder dummyvariabler kan du göra det mycket enklare. Du behöver bara byta ut dessa operatorer för att få den enklare formeln.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Därifrån använder du villkoret att om resultatet är större än 0, skulle det vara SANT. Om det visar sig vara lika med 0 får du en FALSK.

Låt oss gå tillbaka till LuckyTemplates-filen för att se hur det fungerar i en faktisk rapport.

Så i det här fallet visar de röda prickarna ett fall där båda villkoren är sanna, medan de lila prickarna visar att endast ett villkor är sant.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

När du går in i måttet kommer du att se dummyvariablerna Rnk och Marg där vi har ett ELLER-villkor som visas med plus .

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Då ser du det också under TRUE- konstruktion, du har en 2:a som resulterar i rött, vilket betyder att du har två TRUE -satser. Om ett av påståendena är sant blir det lila. Om ingetdera är sant resulterar det i en 0, vilket visar dig blå prickar.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Det motsvarar direkt den OR-diagrammatris vi pratade om tidigare.

Om vi ​​går tillbaka till vårt sista tillstånd kan vi titta på vad som händer om vi vill titta på två uppsättningar av extremvärden. I grund och botten, om vi vill titta på vad som uppfyller både villkor A och B, uppfyller de två prickarna här uppe som representerar produkterna 4 och 15 det kriteriet.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

På baksidan kan du också titta på den nedre ytterstången, som är produkt 1.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Kom också ihåg att hela denna rapport är dynamisk. Så ju mer du flyttar runt dina reglage, desto fler punkter kommer du potentiellt att se.

Om man tittar på måttet nedan, visar det det sista fallet vi pratade om där du har fyra dummyvariabler - topprankningen (TopRnk), värdena som är större än eller lika med marginalen (GTEMarg), bottenrankingen (BotRank) och mindre än eller lika med marginal (LEMar).

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

När vi tittar på det kombinerade värdet multiplicerade vi TopRnk och GTEMarg och lade sedan till det till produkten av BotRank och LEMarg.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX

Om något av dessa villkor återgår som TRUE kommer det att visa en röd punkt på diagrammet. Om inte, skulle det visa en blå punkt.

Dummyvariabler: Hur man använder dem för att skriva smartare DAX




Slutsats

Genom att använda och kombinera dessa dummyvariabler kan du få de resultat du vill ha med enkla mått jämfört med de vanliga komplicerade DAX-måtten som textuella SANT/FALSK-mått kräver.

Börja prova detta tillvägagångssätt på andra rapporter som du har använt SANT eller FALSKT villkor i det förflutna och se hur det påverkar dina åtgärder när du gör villkoren mer komplicerade.

Med vänliga hälsningar,


Upptäck unika insikter med LuckyTemplates TOPN-funktion

Upptäck unika insikter med LuckyTemplates TOPN-funktion

Den här bloggen innehåller LuckyTemplates TOPN DAX-funktion, som gör att du kan få unika insikter från dina data, vilket hjälper dig att fatta bättre marknadsföringsbeslut.

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Lär dig några fantastiska analytiska tekniker som vi kan göra för datamodellering i LuckyTemplates med hjälp av DAX-stödtabeller.

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Här dyker vi in ​​i LuckyTemplates Advanced DAX och implementerar rankningslogik för att få en mycket unik insikt. Jag visar också upp måttförgrening i det här exemplet.

LuckyTemplates What-If-parameterfunktion

LuckyTemplates What-If-parameterfunktion

Den här bloggen introducerar den nya funktionen i LuckyTemplates, analysparametern What-If. Du kommer att se hur det gör allt snabbt och enkelt för din scenarioanalys.

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Lär dig hur du avgör om din intäktstillväxt är bra genom att kontrollera om dina marginaler ökade med hjälp av LuckyTemplates mäter förgrening.

LuckyTemplates parametrar via frågeredigerare

LuckyTemplates parametrar via frågeredigerare

Lär dig och förstå hur du kan skapa och använda LuckyTemplates-parametrar som är en kraftfull funktion i frågeredigeraren.

Runda stapeldiagram – En visualisering för din instrumentpanel

Runda stapeldiagram – En visualisering för din instrumentpanel

Denna handledning kommer att diskutera hur man skapar ett runt stapeldiagram med Charticulator. Du kommer att lära dig hur du designar dem för din LuckyTemplates-rapport.

PowerApps funktioner och formler | En introduktion

PowerApps funktioner och formler | En introduktion

Lär dig hur du använder PowerApps funktioner och formler för att förbättra funktionaliteten och ändra ett beteende i vår Power Apps canvas-app.

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.