Oplev unik indsigt ved hjælp af LuckyTemplates TOPN-funktion
Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.
Denne øvelse fokuserer på at bruge Power Query M number.mod-funktionen til at skabe et skiftende 0-1-mønster i Dato-tabellen. Løsningen, som jeg vil vise dig, kom fra en af vores superbrugere i fællesskabet, Rajesh, hos LuckyTemplates. Du kan se den fulde video af denne tutorial nederst på denne blog.
Målet er at generere en sekvens af fire nuller vekslet med fire enere og derefter gentage den i løbet af dagen.
Rajesh var spot on med sin analyse og problemfordeling ved at bruge Power Query M-funktionen til at løse det. Med det sagt, lad os gå over til Power Query.
Indholdsfortegnelse
Power Query M Number.Mod-funktionen
DetM, specifikt nummer.mod-funktionen kommer til at være kernen i vores løsning. Hvad gør den?
Du kan kontrollere den interne dokumentation for enhver M-funktion ved at indtaste dens navn uden parentes som vist her i formellinjen. Denne funktion returnerer resten af en heltalsdivision. Det tager op til tre parametre, de to første, et tal og divisoren, som også er et tal.
Lad os nu komme i gang. Jeg vælger min eksempelforespørgsel, der indeholder et datointerval, som jeg har forberedt.
I mange tilfælde bruges number.mod i kombination med en indekskolonne, der derefter bruges som dens første parameter. Men det vil jeg ikke gøre, for hvis du tænker over det, er datoværdien et heltal. Så at skabe et indeks, der deler samme granularitet som kolonnen Dato, hvor hver række har en unik værdi, er noget, vi kan undgå.
Alt, hvad vi skal gøre for at efterligne et indeks, er at trække den allerførste dato i vores Dato-tabel fra hver dato i kolonnen Dato. For at gøre det kan vi gemme startdatoværdien i en variabel, så vi kan bruge den igen og igen. Jeg synes, at Advanced Editor er det bedste sted at gøre dette.
Så jeg åbnervindue og opret en ny variabel. Lad os kalde det Startdato . Jeg har hårdkodet min første date her, så jeg vil bare kopiere og indsætte den. Glem ikke kommaet i slutningen, og vi kan nu erstatte den første dato med vores startdato-variabel.
Som du kan se, ændrede intet sig.
Oprettelse af brugerdefineret kolonne til Power Query M-mønsteret
Så via denne minitabel vil vi tilføje en brugerdefineret kolonne.
Lad os kalde denne kolonne, Pattern , og indtaste Power Query M-funktionen, number.mod . Du ser de to parametre her, et tal som et nullbart tal og en divisor som et nullbart tal. Så det kræver to taltypeværdier som parametre.
Nu har vi ikke tal, vel? Vi har datoer, og der er ikke sådan noget som automatisk typekonvertering i dem. Så vi skal have tallet fra vores datoværdi. Så vi indtaster her, number.from derefter vores Dato- kolonne og trækker derefter vores StartDate- variabel.
Lad os nu sige den første date i voresreturnerer en en, så vil vores Startdato også returnere en en. Så en minus en er lig med nul. Jeg vil have vores indeksnummerering til at starte med et et i stedet for et nul. Så vi bliver nødt til at tilføje én tilbage plus én. Nu er én minus én lig med nul plus én returnerer én for den første post.
For den anden post får vi en værdi på to (2) for datoen i kolonnen Dato, minus en en (1) fra vores Startdato-værdi, der er lig med én, plus den, vi tilføjer tilbage, returnerer en to, og så videre . Vores gentagne mønster var baseret på en række af fire alternerende værdier. Så som divisor vil jeg give værdien fire (4).
Lad os se, hvad det gør. I række fire får vi nul, såvel som i række otte. Så hver fjerde forekomst returnerer en nulværdi for denne post.
Oprettelse af en HVIS-SÅ-ANDEN-konstruktion
Lad os gå tilbage til vores kundedialogboks og udvide den logik, vi har skrevet indtil nu. Bortset fra divisoren skal vi gentage den samme logik for at kunne identificere en ottende forekomst.
Men på den ottende række ønsker vi en anden værdi. Så for at skelne mellem en fjerde og en ottende forekomst kan vi bruge en HVIS-SÅ-ELSE-konstruktion. På den måde kan vi returnere en værdi for den første logiske test, der returnerer en sand.
Så hvis , og jeg indsætter vores kode tilbage her (undtagen divisoren), skal du ændre den divisor til en otte, så en ottende række vil returnere nul. Så hvis det er lig med nul, betyder det, at det vil fejle din vej til sand eller falsk. Så vil vi have en (1). Ellers , hvis vores logik her identificerer en fjerde række er lig med nul, så vil vi have nul (0). Ellers ønsker vi ikke at få en værdi tilbage. Så lad os tilføje et null .
Lad os nu tjekke vores logik igen. Så ved hver fjerde forekomst får vi det nul. Og så, den ottende, får vi en en. Dernæst får vi nul og en et, og så videre.
Så det her ser godt ud. Det eneste, vi skal gøre nu, er at fylde disse værdier op.
Så inde i formellinjen tilføjer vi en Table.FillUp i begyndelsen og derefter nogle åbningsparenteser. I slutningen af vores kode tilføjer vi typenummer - vi skal også tilføje en kolonne som en liste. Så vi går med komma , og brug derefter de krøllede parenteser til listeinitialisering og som en tekstværdi passerer vores kolonnenavn, Pattern . Glem ikke de afsluttende parenteser og tryk på OK.
Konklusion
Dette er et meget unikt scenarie, og ærligt talt kan jeg ikke komme i tanke om en applikation til dette specifikke mønster, men forhåbentlig kan du se potentialet i at skabe sekvenser ved hjælp af Power Query M-funktionen, number.mod.
For flere detaljer, se den fulde video nedenfor for denne tutorial.
Alt det bedste!
Melissa
Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.
Lær nogle fantastiske analytiske teknikker, som vi kan gøre til datamodellering i LuckyTemplates ved hjælp af DAX-understøttende tabeller.
Her dykker vi ned i LuckyTemplates Advanced DAX og implementerer rangeringslogik for at få en meget unik indsigt. Jeg viser også måleforgrening i dette eksempel.
Denne blog introducerer den nye funktion i LuckyTemplates, What-If-analyseparameteren. Du vil se, hvordan det gør alt hurtigt og nemt til din scenarieanalyse.
Lær, hvordan du afgør, om din omsætningsvækst er god ved at kontrollere, om dine avancer er udvidet ved hjælp af LuckyTemplates, der måler forgrening.
Lær og forstå, hvordan du kan oprette og bruge LuckyTemplates Parameters, som er en kraftfuld funktion i Query Editor.
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.
Lær, hvordan du bruger PowerApps-funktioner og -formler til at forbedre funktionaliteten og ændre adfærd i vores Power Apps-lærredsapp.
I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.
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.