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.
Jeg vil vise dig, hvordan du bruger IsAfterToday i udvidede datotabeller til LuckyTemplates tidsintelligensscenarier.
Når det kommer til DAX-funktioner og andre værktøjer, tildeler jeg dem bestemte jobs eller personas i mit hoved, så jeg nemt kan huske, hvad de laver. For eksempel ser jeg som flyveleder. tænker jeg påsom udsmider i en klub, der bestemmer, hvem der kommer ind, og hvem der ikke.
Hvad angår IsAfterToday , ser jeg det som Terminator, der gennemsøger mine data, tabeller og billeder for at fjerne alt, hvad jeg ikke har brug for. Du kan se den fulde video af denne tutorial nederst på denne blog.
Indholdsfortegnelse
Adgang til IsAfterToday gennem den udvidede datotabel
For at få adgang til IsAfterToday skal jeg bruge en udvidet datotabel . Det er fordi IsAfterToday faktisk ikke er en DAX-funktion ; det er en del af selve bordet.
Hvis du går ind i din tabels datavisning, ser kolonnen IsAfterToday sådan ud.
Logikken bag IsAfterToday er enkel. Hvis datoen falder efter i dag, er det SAND. Hvis det er før i dag, er det FALSK.
For yderligere at vise dig, hvad IsAfterToday kan gøre, gennemgår jeg to use cases, der perfekt viser dets relevans i LuckyTemplates tidsintelligens scenarier.
Afslutning af kumulative totaler
Den første use case handler om at afslutte kumulative totaler . Det er en sag, der ofte bliver spurgt om i LuckyTemplates Forum.
I dette eksempel vil jeg vise dig, hvordan brugen af en DAX-måling ville kræve omkring 38 linjer, men hvordan brugen af IsAfterToday kan udføre jobbet med kun 2 klik uden brug af DAX.
Denne sag involverer en grundlæggende struktur.
Jeg har kvartalet og året, det samlede salg og det kumulative salg.
Det samlede salg løber fra 2018 og frem til i dag, og fortsætter derefter med nogle prognosedata til udgangen af 2020.
Hvad angår det kumulative salg , er det bare det grundlæggende kumulative salgsmønster medanvendt på Datoerne.
Visualiseringen viser mig, at der er et problem et eller andet sted, fordi dataene bliver tvivlsomme, efter at det samlede salg falder ud.
Når vi ser tilbage på tabellen, er der ingen data for 2021.
Så i diagrammet bliver det sidste tal bare gentaget igen og igen indtil udgangen af 2021.
Så hvordan rydder vi op i det samlede salg og det kumulative salg?
Først vil jeg bruge DAX-tilgangen. Jeg starter med at droppe denne kolonne for Alt kumulativt salg i tabellen.
Sådan ser alt kumulativt salgsmål ud.
Det viser også enfilter, der siger, om IsAfterToday erderefter aer tildelt den. Hvis ikke, tildeles den kumulative salgsværdi .
Så hvis jeg går tilbage til tabellen og tjekker, viser den, at den returnerer den rigtige værdi række for række.
Problemet ligger dog i totalen.
Totalen viser 73 millioner, når den skulle vise den sidste værdi, som er 59 millioner.
Så jeg dropper Alt2 Kumulative Total i tabellen for at vise dig, hvordan de korrekte data skal se ud.
Nu vil jeg vise dig forskellen mellem Alt Cumulative Sales- kolonnen og Alt2 Cumulative Sales .
Her er det samme kumulative salgsmål .
Så er her DAXFilter , hvor IsAfterToday anvendes.
I det mål, jeg brugte tidligere, kom der intet efter det. Det er derfor, værdierne var korrekte for hver række, men der var ingen måde, beregningen kunne fortælle, om den havde nået den sidste række eller ej.
I dette tilfælde er der en helt ny struktur, der gør det.
Der er enfunktion bliver anvendt, så hvis jeg når den samlede række, tvinger jeg automatisk en total af alle de kumulative salg op til det tidspunkt.
Dette er den tilgang, som mange LuckyTemplates-brugere anvender, mest fordi den faktisk virker. Men igen betyder det også, at du skal skrive over 30 linjer DAX.
Denne gang viser jeg dig, hvordan du gør det med blot et par klik.
Bare klik på denne lille pil her for at vise filtrene.
Sådan kommer det til at se ud, når filtrene vises.
Så under Fields vil jeg søge efter IsAfterToday .
Jeg trækker og slipper det i mine filtre.
Derefter, under det IsAfterToday- filter, vil jeg afkrydse False , hvilket betyder, at jeg henviser til i dag eller tidligere dage.
Se på, hvordan det rydder op. Alle værdierne er de rigtige steder nu. Totalerne er også korrekte.
Det samme kan siges om visualiseringen og slicerne.
Denne tilgang er åbenbart meget mere effektiv end udelukkende at bruge en DAX-tilgang.
Opdeling af aktuelle data og prognosedata
Jeg vil nu arbejde på den anden use case, som involverer at tage feltet Total Sales og opdele dataene i aktuelle data og prognosedata ved hjælp af IsAfterToday .
Jeg vil også gøre det dynamisk, så det over tid lægger mere data ind i de faktiske og færre data i prognosen, indtil det når slutningen af prognoseperioden og alt bliver faktisk.
Jeg har stadig det samlede salg fra det sidste eksempel. Som tidligere nævnt har den data fra fortiden og nutiden plus data mod slutningen af året. Så det er en blanding af faktiske data og prognosedata.
Jeg har også mit grundlæggende kumulative salgsmål oven i det og et kumulativt salgsbillede .
Og lad os sige, at det, vi ønskede at gøre, er at tage og faktisk dekomponere det samlede salg i vores visual til faktisk og prognose.
Så for faktisk salg er det sådan, DAX-målet kommer til at se ud.
Grundlæggende siger dette, at hvis datoen returnerer enfor IsAfterToday skal den kumulative faktiske værdi bruges. Hvis ikke, skal en BLANK returneres.
Nu vil jeg tage målingen for kumulativt prognosesalg og også tilføje det under mine værdier .
Men ser på DAX, det viser sigfor at IsAfterToday returnerer prognoseværdierne.
Under visualiseringer fjerner jeg kumulativt salg .
Så dropper jeg det kumulative faktiske salg og det kumulative prognosesalg der i stedet.
Nu viser visualiseringen det kumulative faktiske salg og det kumulative prognosesalg tydeligt opdelt i visualiseringen.
Konklusion
Dette er blot to af de nyttige tilfælde, hvor IsAfterToday viser sig at være gavnlig. Jeg opfordrer dig til bare at klikke og eksperimentere med det for at opdage endnu flere måder at bruge det til dine LuckyTemplates tidsintelligens problemer.
Dette var også en god måde at vise, at selvom DAX er virkelig kraftfuld, er der også tilfælde, hvor der er behov for et hurtigere alternativ. Det handler om at mestre fordele og ulemper ved at bruge DAX i enhver given situation, så du altid kan vælge, hvilken tilgang du vil anvende.
Alt det bedste,
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.
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
LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det
Lær, hvordan du installerer programmeringssproget Python i LuckyTemplates, og hvordan du bruger dets værktøjer til at skrive koder og vise billeder.
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.
Lær, hvordan du sorterer felterne fra kolonner med udvidet datotabel korrekt. Dette er en god strategi at gøre for vanskelige felter.
I denne artikel gennemgår jeg, hvordan du kan finde dine topprodukter pr. region ved hjælp af DAX-beregninger i LuckyTemplates, herunder funktionerne TOPN og CALCUATE.
Lær, hvordan du bruger en uønsket dimension til flag med lav kardinalitet, som du ønsker at inkorporere i din datamodel på en effektiv måde.