Power BI 3 min

Power BI: Maak een dynamische rolling average voor trendanalyse

Kort antwoord

Een rolling average helpt je om trends in je data beter te begrijpen door fluctuaties te verzachten. In dit artikel leer je hoe je in Power BI een dynamische rolling average maakt die automatisch meebeweegt met je geselecteerde datumbereik.

Een rolling average helpt je om trends in je data beter te begrijpen door fluctuaties te verzachten. In dit artikel leer je hoe je in Power BI een dynamische rolling average maakt die automatisch meebeweegt met je geselecteerde datumbereik.

Een rolling average helpt je om trends in je data beter te begrijpen door fluctuaties te verzachten. In dit artikel leer je hoe je in Power BI een dynamische rolling average maakt die automatisch meebeweegt met je geselecteerde datumbereik. Dit is essentieel voor data- en BI-teams die nauwkeurige en flexibele analyses willen uitvoeren.

Wat je nodig hebt

  • Een datumtabel die gekoppeld is aan je feitentabel

  • Een meetwaarde (bijvoorbeeld omzet of aantal) waarop je de rolling average wilt toepassen

  • Basiskennis van DAX-formules in Power BI

Stap 1: Maak een datumtabel en zorg voor relatie

Een goede datumtabel is cruciaal voor tijdsgebonden berekeningen zoals een rolling average. Zorg dat je een datumtabel hebt die alle datums bevat binnen je analyseperiode en dat deze correct is gekoppeld aan je feitentabel via een datumkolom.

Gebruik bijvoorbeeld de volgende DAX-formule om een datumtabel te maken in Power BI:

DatumTabel = CALENDAR(DATE(2020,1,1), DATE(2024,12,31))

Maak vervolgens in het model een relatie tussen DatumTabel[Date] en je feitentabel[Datum].

Stap 2: Definieer de rolling average meetwaarde

Maak een nieuwe meetwaarde aan die de rolling average berekent over een dynamisch aantal dagen, bijvoorbeeld 7 dagen. Dit doe je met de DAX-functie AVERAGEX gecombineerd met DATESINPERIOD.

Gebruik deze DAX-formule als voorbeeld:

RollingAverage7D = 
CALCULATE(
    AVERAGEX(
        DATESINPERIOD(
            'DatumTabel'[Date],
            MAX('DatumTabel'[Date]),
            -7,
            DAY
        ),
        CALCULATE(SUM('FeitenTabel'[Waarde]))
    )
)

Deze formule berekent het gemiddelde van de som van de waarde over de afgelopen 7 dagen, waarbij de periode dynamisch meebeweegt met de geselecteerde datum.

Stap 3: Gebruik de rolling average in je visualisaties

Voeg de nieuwe meetwaarde RollingAverage7D toe aan je rapporten, bijvoorbeeld in een lijngrafiek samen met de originele waarde. Dit maakt trends en fluctuaties beter zichtbaar en helpt bij het nemen van datagedreven beslissingen.

Je kunt de periode aanpassen door het getal -7 in de DAX-formule te wijzigen naar een ander aantal dagen, afhankelijk van je analysebehoefte.

Tips & veelgemaakte fouten

  • Zorg voor een volledige datumtabel zonder ontbrekende datums om correcte berekeningen te garanderen.

  • Gebruik relaties tussen datumtabel en feitentabel om tijdsintelligentie functies te laten werken.

  • Pas de periode aan in de DAX-formule om de rolling average flexibel te maken voor verschillende analyses.

  • Vermijd het gebruik van gefilterde kolommen in de rolling average formule die de dynamiek kunnen beperken.

Voorbeeld / mini use case

Stel je hebt een verkoopdashboard en wilt de 7-daagse gemiddelde omzet tonen om seizoensinvloeden en pieken te analyseren. Met de rolling average meetwaarde zie je direct of de omzet stijgt of daalt zonder dat dagelijkse schommelingen afleiden. Dit helpt je om betere voorspellingen te maken en acties te plannen.

Afsluiting

Met deze dynamische rolling average in Power BI verbeter je je trendanalyses en maak je je rapporten inzichtelijker en gebruiksvriendelijker. Wil je meer leren over datumtabellen? Bekijk dan het artikel Datumtabel in Power BI toevoegen. Voor het maken van deze berekeningen werk je direct in Power BI Desktop of de online omgeving.

Onze tip: Zet de rolling average naast de dagelijkse waarde in dezelfde lijngrafiek. Zo zien gebruikers direct het verschil tussen de ruwe fluctuaties en de onderliggende trend. Gebruik een stippellijn voor de rolling average en een volle lijn voor de dagwaarden, zodat het visueel duidelijk blijft welke lijn welke meting toont.

Veelgestelde vragen

Welke tips en veelgemaakte fouten zijn er?

- Zorg voor een volledige datumtabel zonder ontbrekende datums om correcte berekeningen te garanderen. - Gebruik relaties tussen datumtabel en feitentabel zodat tijdsintelligentie-functies correct werken. - Pas de periode aan in de DAX-formule (het getal -7 in DATESINPERIOD) om de rolling average flexibel te maken voor 14, 30 of een ander aantal dagen. - Vermijd gefilterde kolommen in de rolling average formule die de dynamische berekening beperken; gebruik CALCULATE met ALL waar nodig om de filtercontext te resetten.

Welke DAX-functie gebruik ik voor een rolling average in Power BI?

Gebruik de combinatie van CALCULATE, AVERAGEX en DATESINPERIOD. DATESINPERIOD bepaalt het datumbereik (bijvoorbeeld de afgelopen 7 dagen), AVERAGEX berekent het gemiddelde over dat bereik en CALCULATE past de juiste filtercontext toe. De formule ziet er zo uit: CALCULATE(AVERAGEX(DATESINPERIOD('DatumTabel'[Date], MAX('DatumTabel'[Date]), -7, DAY), CALCULATE(SUM('Feitentabel'[Waarde])))). Pas het getal -7 aan voor een andere periode.

Waarom geeft mijn rolling average lege waarden aan het begin van de tijdreeks?

Aan het begin van je datumbereik zijn er minder dan het ingestelde aantal dagen beschikbaar voor de berekening. DATESINPERIOD geeft dan toch een resultaat op basis van de beschikbare datums, maar als de datumtabel niet ver genoeg teruggaat, kunnen er lege waarden ontstaan. Zorg dat je datumtabel voldoende vroeg begint, bijvoorbeeld een half jaar voor de eerste datapunten, zodat de rolling average al bij de eerste records een betrouwbare waarde kan berekenen.

Hier over sparren?

Plan een vrijblijvend gesprek. We luisteren mee, schetsen een aanpak en geven een eerlijk beeld van wat haalbaar is, zonder verkoopdruk.