Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

INTERSECT -funktionen i LuckyTemplates er en avanceret tabelfunktion, og du skal forstå den bedre, så du kan maksimere brugen af ​​denne avancerede DAX. Du kan se den fulde video af denne tutorial nederst på denne blog.

Men for at forstå, hvordan det fungerer, skal du blive meget bedre til at forstå virtuelle tabeller. Virtuelle tabeller er et nøglebegreb, når man bruger DAX-mål i LuckyTemplates.

Hvad INTERSECT-funktionen specifikt gør, er, at den giver dig mulighed for – inden for et mål – at sammenligne en virtuel tabel med en anden. Du vil så endelig være i stand til at returnere en tabel med resultater, der vises i begge versioner af disse to virtuelle tabeller.

Når du forstår, hvordan du kan bruge denne funktion, vil du snart se, at der er en fantastisk kapacitet, når det kommer til at køre noget meget avanceret logik med lethed.

Indholdsfortegnelse

Fremvisning af en unik indsigt ved hjælp af INTERSECT-funktionen

I eksemplet, som jeg gennemgår, vil jeg fremvise en virkelig unik indsigt, som du kan opdage ved hjælp affungere. Denne særlige indsigt kan genbruges på mange forskellige måder . Dette er mest nyttigt, når du arbejder med kundedata, og dit mål er at forstå dine kunder bedre.

Den bedste måde at lære denne funktion på er gennem en praktisk scene. Så jeg vil gennemarbejde et scenarie og regne det ud baseret på vores kunder for den aktuelle måned. Disse kunder bør også have en købshistorik for de seneste to måneder. Og vi skal finde ud af, hvilke af vores nuværende kunder der havde tidligere ordretransaktioner for 2 måneder siden.

Tag et kig på denne LuckyTemplates-rapport, som jeg har lavet for at demonstrere funktionen. Først har jeg sat nogle filtre op i venstre side, hvor vi kan vælge en hvilken som helst måned.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Så har jeg kolonnerne til alle kunderne. Kolonnerne Samlet salg og Salg LM viser de kunder, der har købt historier for den aktuelle måned såvel som for den sidste måned. Formlen for det samlede salg er meget enkel. Det er blot summen af ​​alt salg fra en bestemt kunde.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Sales LM- formlen er en simpel totalsalgsformel, der forgrener sig til en tidsintelligensberegning ved hjælp af DATEADD for at springe tilbage til den foregående måned.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Det er vigtigt at forstå den indledende kontekst af formlen, da vi aktiverer en beregning af sidste måned ved hjælp af de nævnte formler. Derfor er vi nødt til at få den indledende kontekst rigtigt, så vi kan anvende DAX-formlerne.

Hvordan udregner vi dynamisk de kunder, der har købt to måneder i træk? Det er, hvad du kan se i kolonnen Kunder 2M i en række .

Nu vil jeg også gerne vide det samlede salg fra disse kunder, så jeg har tilføjet kolonnen Salg fra kunder 2M i en række .

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Identifikation af gentagende kunder ved hjælp af INTERSECT- funktionen

Lad os tage et kig på, hvor nyttig INTERSECT er, når det kommer til at finde ud af de tilbagevendende kunder. Her er formlen for kunder 2M i træk .

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

I denne formel placerede jeg to virtuelle tabeller, som er udevariabler ( VAR ) inde i INTERSECT- funktionen. Grundlæggende evaluerer den listen over elementer eller rækker, der er til stede i den første tabel, men ikke i den anden.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Den indledende tabel her er CustomerTM , som står for de kunder, der har købt denne måned. Derefter fortsætter formlen med at kontrollere, om disse kunder også er angivet i CustomerLM- tabellen.

Hvis der findes en kunde i begge de virtuelle tabeller, vil de blive bibeholdt. Således giver denne formel os mulighed for at ende med alle de kunder, der har købt denne måned og måneden før.

Dernæst brugte jegfunktion til at tælle de resterende kunder.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Lad os nu tale om at skabe virtuelle borde til de kunder, der har købt i 2 måneder i træk.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Hvis du har bemærket, har jeg lagt dem inde i funktionen ( variabler). Jeg anbefaler stærkt disse funktioner, da de er en fantastisk tilføjelse til at skrive mere komplekse formler. 

I dette særlige sæt til VAR CustomerTM opretter jeg en virtuel tabel med kunde-id'er. Så til VAR CustomerLM opretter jeg en virtuel tabel igen for vores kunder i sidste måned. Men denne gang har jeg tilføjetfunktion, så den kan springe tilbage til forrige måneds kundesæt i stedet for den aktuelle kontekst.

Her er det interessante ved denne beregning, som vi har nu.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Formlen tjekker kun hver enkelt række af kunderne, fordi kunderne er filtreret. Hvis der ikke er salg for den foregående måned for en bestemt række (kunde), er der ikke noget at vurdere. Således er kolonnen Kunder 2M på række tom. Men hvis en kunde har en tidligere rekord, tæller den som 1 .

For eksempel, hvis vi ser på dataene for Adam Thompson, returnerer det 1 under kolonnen Kunder 2M på række . Det betyder, at denne kunde har rekord for både sidste måned og de to måneder før det.

Genbrug af formlen til en anden sammenhæng

Du er måske ikke klar over vigtigheden af ​​at bruge INTERSECT med det samme, men der er en rigtig god grund til, hvorfor du skal bruge denne formel. Det er primært fordi du kan genbruge denne beregning på tværs af en lang række forskellige sammenhænge. Tag et kig på dette eksempel nedenfor.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

For at komme med eksempeldataene ovenfor brugte jeg bare den samme formel. Men denne gang starter jeg i en anden indledende sammenhæng. I stedet for at evaluere en enkelt række, evaluerer den mange sammenhænge som State Code. Og så opretter den en liste over kunder, der har købt i juni 2016 såvel som i maj 2016. Derefter vil jeg sammenligne den med de kunder, der har købt én gang i en bestemt tilstand i den aktuelle måned.

Du kan se i kolonnen Kunder 2M på række det nøjagtige antal kunder, der matcher dette kriterium.

Nedenfor denne tabel er en anden visualisering, der viser de samme data for kunder 2M i træk efter stat kode .

Du kan faktisk ændre konteksten i din model igen afhængigt af dine krav. Hvis dit filter fungerer korrekt, kan du genanvende denne formel for at tilføje til andre situationer.

Det er derfor, jeg sagde, at INTERSECT er meget kraftfuldt. I stedet for bare at skrive IF- udsagn, kan du bruge disse INTERSECT- funktioner til din formel.

Udregning af det samlede salg fra tilbagevendende kunder

Desuden arbejder vi på det samlede antal salg fra vores tilbagevendende kunder .

Resultaterne i kolonnen Salg fra kunder 2M på række er summen af ​​kundens køb for den aktuelle måned og den foregående. Vær opmærksom på, at vi kun kan få dette resultat, hvis kunden har købt to måneder i træk. 

Dette er formlen for gentagne kunders samlede salg.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Du kan se her, at mønsteret er næsten helt det samme. Den eneste forskel her er, at jeg i stedet for COUNTROWS brugte funktionen CALCUATE til at ændre konteksten for beregningen. 

Dette skyldes, at det, vi har brug for her, er den samlede mængde salg fra kunderne. Men som du kan se, bruger jeg stadig INTERSECT- funktionen. Det er meget nyttigt, når det kommer til Pareto-analyse. Men du kan også anvende denne funktion på en række forskellige måder.

Inkorporerer INTERSECT for kunder sidste tre måneder

Du kan stadig tage tingene længere end før. Du kan faktisk beregne de kunder, der har købt i tre måneder i træk, ved at bruge formlen nedenfor.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Alt, hvad jeg har tilføjet, er en anden beregning, der springer to måneder tilbage i stedet for én.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Derefter har jeg tilføjet en INTERSECT- funktion i en anden INTERSECT- funktion. Så det vil ikke kun evaluere kunderne for den aktuelle måned, og dets købshistorik i sidste måned. Det vil også kontrollere, om den pågældende kunde også har købt for 2 måneder siden.

For at tilføje disse data til din tabel, skal du blot trække Customers 3M In A Row -formlen ind i tabellen.

Sådan maksimeres brugen af ​​INTERSECT-funktionen – Avanceret DAX

Du kan se i bunden, at der i alt er 45 kunder, der har købt tre måneder i træk. Dette er en ret intensiv indsigt, som er meget nyttig.




Konklusion

Som tidligere nævnt er INTERSECT en tabelfunktion, og den kan bruges på mange forskellige måder.

Fokus med denne tutorial er, at du skal se, hvordan du kan bruge det i en foranstaltning og på forskellige måder inden for en foranstaltning. Det er sådan, jeg tror, ​​det kan bruges på en meget effektiv måde til at køre nogle exceptionelt overbevisende analyser.

Held og lykke med at dykke ned i denne avancerede LuckyTemplates-tutorial.


LuckyTemplates-parametre via forespørgselseditor

LuckyTemplates-parametre via forespørgselseditor

Lær og forstå, hvordan du kan oprette og bruge LuckyTemplates Parameters, som er en kraftfuld funktion i Query Editor.

Rundt søjlediagram – en visualisering til dit dashboard

Rundt søjlediagram – en visualisering til dit dashboard

Denne vejledning vil diskutere om oprettelse af et rundt søjlediagram ved hjælp af Charticulator. Du lærer, hvordan du designer dem til din LuckyTemplates-rapport.

PowerApps funktioner og formler | En introduktion

PowerApps funktioner og formler | En introduktion

Lær, hvordan du bruger PowerApps-funktioner og -formler til at forbedre funktionaliteten og ændre adfærd i vores Power Apps-lærredsapp.

Pipe In R: Tilslutningsfunktioner med Dplyr

Pipe In R: Tilslutningsfunktioner med Dplyr

I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX fra LuckyTemplates giver dig mulighed for at returnere rangeringen af ​​et specifikt tal i hver tabelrække, der udgør en del af en liste over tal.

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Lær, hvordan du adskiller en PBIX-fil for at udtrække LuckyTemplates-temaer og -billeder fra baggrunden og bruge den til at oprette din rapport!

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

Python i LuckyTemplates: Sådan installeres og konfigureres

Python i LuckyTemplates: Sådan installeres og konfigureres

Lær, hvordan du installerer programmeringssproget Python i LuckyTemplates, og hvordan du bruger dets værktøjer til at skrive koder og vise billeder.

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Lær, hvordan du beregner dynamiske fortjenstmargener ved siden af ​​LuckyTemplates, og hvordan du kan få mere indsigt ved at grave dybere ned i resultaterne.