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.
I denne vejledning vil jeg vise dig den ultimative budgettildelingsformel, som du kan bruge, når du håndterer mængder og data med forskellige granulariteter. Du kan se den fulde video af denne tutorial nederst på denne blog.
Dine budgetter kan være på en månedlig, kvartalsvis eller årlig granularitet, mens dit salg normalt er på et dagligt niveau. Dette skaber et misforhold i modellen.
Budgettildelingsformlen, der er diskuteret i denne vejledning, vil give dig mulighed for at løse denne uoverensstemmelse i granulariteter. Det vil også gøre dig i stand til nemt at skifte mellem forskellige tidskontekster med blot nogle få justeringer af algoritmen.
Efter at have forstået, hvordan det fungerer, vil du være i stand til effektivt at bruge denne metode, når du håndterer budgetter i dine egne miljøer.
Indholdsfortegnelse
Uoverensstemmende granulariteter
Lad os se på modellen.
Dine budgetter vil generelt have forskellig granularitet. Det betyder, at dine budgetter kan være på et månedligt niveau, for eksempel Budget pr. måned eller pr. produkt.
Men din salgs- eller faktatabel kan være på et dagligt niveau.
Så der er et granularitetsmisforhold.
For at køre en analyse eller sammenligning skal du finde en måde at allokere dine budgetter på tværs af den højere granularitet.
Den højere granularitet, i dette tilfælde, er hver dag.
Så du skal finde en måde at tage dine månedlige beløb og fordele dem i daglige beløb.
Introduktion til budgettildelingsformlen
Jeg kalder detteformel, fordi du kan bruge denne teknik med budgetter af enhver granularitet. Du kan bruge det til kvartalsvise eller årlige budgetter. Alt du behøver er at foretage nogle små justeringer for at få dette til at fungere.
Lad os først se på slutresultatet af budgettildelingsformlen .
Jeg har min Dato i tabellen, og jeg kan nemt ændre den ved hjælp af skæremaskinen.
Jeg har også fået minbeløb og budgettildeling .
Der henvises til tabellen i denne visualisering:
Mit daglige salg varierer. Men mine budgetter er konstante, fordi de er månedlige beløb.
Dette diagram viser dog repræsentationen bedre, fordi det viser et månedligt perspektiv.
Diagrammet viser salget pr. måned i forhold til det månedlige budget.
Forståelse af allokeringsalgoritmen
Lad os nu se på formlen.
Det, jeg vil forklare først, er denne del af formlen:
For at forstå det, lad mig give et eksempel. Lad os sige, at der er et månedligt beløb. Lad os gange det beløb med 1 divideret med 30, eller med hvor mange dage der er i måneden. Det bliver tildelingsalgoritmen.
Formlen er DayInContext divideret med DaysInMonth ganget med MonthlyBudgetAmounts . Det bliver metoden, som vil give dig den månedlige budgettildeling til hver eneste dag.
Så hvis du havde kvartalsbudgetter, ville det være 1 divideret med DaysInQuarter ganget med kvartalsbudgettet . Sådan fordeler du et kvartalsbudget på tværs af hver eneste dag.
Det er bare et spørgsmål om at bygge og komme til dette punkt i formlen.
Du skal starte med denne del af formlen i tankerne. Derefter skal du finde ud af, hvordan du får den dynamiske DayInContext , DaysInMonth , og hvordan du allokerer MonthlyBudgetAmounts .
I formlen for budgettildeling har jeg bygget det hele inden for VARIABLER, fordi mange af disse individuelle tiltag ikke er nødvendige.
Du skal bruge, når en beregning kun er relevant for et bestemt mål.
Hvis et mål kan forgrenes, vil jeg ikke anbefale at bruge VARIABLER. I stedet ville jeg først oprette den indledende måling og derefter forgrene mig til en kumulativ total eller et glidende gennemsnit.
Komponenter af budgettildelingsformlen
Så lad os nu se på hver enkelt del af budgettildelingsformlen.
Først og fremmest er der Days In Context .
Dette forsøger at tælle op, hvor mange datoer der er i en bestemt kontekst.
Denne er ret nem, fordi der er en evalueringskontekst for hver eneste dag. Så hvis jeg går ( Datoer ) , vil det give mig en dag for hver eneste række.
Lad os nu gå til dage i måneden .
Dette er et vigtigt format, fordi det er en dynamisk måde at regne ud, hvor mange dage der er i måneden.
Så jeg bruger stadig COUNTROWS( Dates) , men jeg har ændret konteksten forfungere. jeg fjernedefiltre fra Datoer. Men så returnerer jeg filtre ved hjælp af fra Måned & År .
Dette giver mig en specifik måned & år kontekst. Så for maj måned viser den 31 dage; for juni viser den 30 dage.
Lige meget hvilken måned du befinder dig i, vil den præcist fordele hele det månedlige budget på tværs af den måned. Du vil ikke få et mismatch, hvor en måned har 30 dage, men så bliver den divideret med 31 dage.
Så dette giver dig mulighed for at have korrekte og dynamiske tildelinger.
Brug af TREATAS til virtuelle forhold
Den næste ting jeg vil gøre er at beregne Total Budget . Lad os nu se på denne del af formlen:
Formlen for det samlede budget er enbaseret på et virtuelt forhold, jeg har skabt.
Dette virtuelle forhold er skabt affungere.
I tabellen kan du se disse større beløb.
Disse mængder bestemmes af valgene i produktnavnskæreren .
Jeg ser kun på en udvalgt gruppe af produkter. Dette tæller det samlede budget op i hver af disse forskellige måneder.
Lad os nu se på TREATAS-formlen for månedlige budgetbeløb .
TREATAS gør mig i stand til at skabe et virtuelt forhold.
Jeg vil skabe forholdet virtuelt, fordi der er mange månedsnavne i Dato-tabellen.
Og mange månedsnavne i produktnavnet.
At placere et mange-til-mange forhold skaber for mange problemer i dine modeller.
I stedet vil jeg oprette et virtuelt forhold mellem tabellen Datoer og tabellen Produktbudgetter i min formel.
Det fysiske forhold mellem Datoer-tabellen og Salgstabellen vil stadig fungere.
Men oprettelse af en virtuel relation giver dig mulighed for at sammenligne oplysninger mellem tabellen Datoer og tabellen Salg efter datoer.
Så jeg har nu de månedlige beløb.
Eksempel på budgetfordeling
Lad os gå tilbage til budgettildelingsformlen.
Nu har jeg alle de ting, jeg skal bruge for at få det til at fungere. Der er dage i kontekst og dage i måneden .
Så ved at beregne 1 divideret med 30 ganget med det månedlige budgetbeløb, får jeg min daglige tildeling på 8.778,13.
At gå til en anden måned vil give et andet dagligt tildelingsbeløb.
Ændring af granularitet i formlen
Dette er den ultimative budgettildelingsformel, fordi hvis du havde kvartalsbudgetter, er alt hvad du skal gøre at finde ud af, hvordan du manipulerer denne del af formlen til kvartalsvis.
Hvis du havde årlige budgetter, er det eneste, du skal gøre, at fordele det efter år. Det kan være 365 eller 90 dage. Det hele afhænger af den parameter, du skal allokere og sammenligne med dine daglige resultater eller de resultater, der har en højere granularitet.
Konklusion
Denne ultimative budgettildelingsformel giver dig mulighed for nemt at oprette budgetterings- og finansieringsrapporter, selv når du har at gøre med data med forskellig granularitet.
Med blot nogle få justeringer af formlen vil du nemt kunne ændre den til den kontekst, du ønsker at vise i dine rapporter.
Jeg håber, du har lært meget af denne tutorial.
Alt det bedste,
***** Lærer du Lucky Templates? *****
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.