Rullende gennemsnit kan give dig værdifuld indsigt i en række data, især inden for salg.
Dette dashboard viser, hvor mange salg der foretages pr. dag og mængden af indtjent indtjening
Der er meget mere volatilitet inden for den kortsigtede periode, men den udjævner sig til sidst på lang sigt. Det bliver en statisk linje, fordi gennemsnittet har flere datoer at arbejde med over tid.
Denne unikke indsigt, som du kan få ved at bruge rullende gennemsnit, kan have stor værdi for visse scenarier.
Først vil jeg sætte mine datoer op og lave den om til en udstikker. Derefter opretter jeg en tabel, der indeholder datoerne og det samlede salg.
Tabellen viser nu Salg pr. dag.
At få dine mål ind i tabellen gør det nemmere at se, hvad der foregår i beregningerne.
Jeg har tænkt mig at beregne et rullende gennemsnit gennem tid , som opdateres automatisk baseret på den valgte tidsramme.
Så lad os gå til beregningen.
Dette er formlen for det rullende gennemsnitssalg :
Nu, hvad du ønsker at opnå, er at være i stand til dynamisk at se tilbage på hvert enkelt salg pr. dag forud for en bestemt dag og få deres gennemsnit.
Og når du bevæger dig ned til de andre rækker, skal du oprette dette tidsvindue uendeligt. Så tidsvinduet udvides i det væsentlige for hver dag, når du går ned på listen i tabellen.
I tabellen kan du se, at det rullende gennemsnit på den første dag er det samme som det samlede salg.
Dette skyldes, at der ikke er nogen tidligere værdi. Det samlede salg vil altid have samme værdi som det rullende gennemsnit i løbet af den første dag.
Men på andendagen bliver det gennemsnittet af de første to dage. På den tredje dag er det gennemsnittet af de første tre dage og så videre. Dette fortsætter indtil sidste række i tabellen.
DAX-funktioner i formlen
Dette er hoveddelen af formlen:
Dette åbner det specifikke tidsvindue. Det fungerer gennem hver eneste dato i den aktuelle valgte kontekst. Dette er, hvad funktionen ALLSELECTED gør.
Så virker det, om datoen er mindre end eller lig medDato. MAX - datoen er altid den aktuelle dato, når du går ned på listen i tabellen. Det regner ud, hvilke dage der vurderes til SAND .
Hvis de vurderer til TRUE , vil den generere tabellen, som den vil gentage.
For alle de datoer, der evalueres til TRUE , beregner formlen gennemsnittet af disse datoer. Så du får hvert enkelt resultat ved at bruge den samme beregning. Tidsvinduet bliver bare større, fordi du ser på tværs af et større udvalg af datoer.
Det fantastiske ved denne beregning er, at den også er dynamisk på grund af funktionen ALLSELECTED .
I diagrammet kan du se, at den mørkeblå linje viser en stor ændring fra starten, som så til sidst udjævnes over tid.
Og hvis du ændrer datointervallet, vil det fortsætte med at vise den lignende tendens.
Gennemsnittet starter højt, men jævner sig så ud over tid.
ALLSELECTED vs ALL-funktion for rullende gennemsnit
Når du beregner et rullende gennemsnit, skal du bruge ALLSELECTED i stedet for at bruge.
Brug af funktionen ALLE i formlen ville give dig mærkelige resultater.
Her er et eksempel.
Du kan se diagrammet viser ulige tal. Den har også en anden y-akse. Hvis du får begge akser til at starte ved 0 og justerer slutværdien af diagrammet, får du et resultat med en flad linje.
Dette sker, fordi det virker på tværs hver eneste dag gennem tiden. Datovalget tages ikke i betragtning. Det går tilbage til tidernes begyndelse.
Derfor er ALLSELECTED nøglen.
Konklusion
Den dynamiske rullende gennemsnitsberegning i LuckyTemplates er ikke så svær. Det kræver simpelthen en forståelse af, hvad du kan gøre med itererende funktioner og virtuelle tabeller.
Denne teknik har mange unikke anvendelser, som du kan anvende på tværs af en lang række scenarier.
Forhåbentlig lærte du meget om logikken bag, hvordan det dynamiske rullende gennemsnit fungerer.