Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now

Reply
AdamMG
Helper I
Helper I

Measure - moving/rolling average

Hi Everyone.
I am trying to create a measure (must be measure) - moving/rolling average (2 or 5 results) for DupResult column.

My Table looks like

rowidDupResultOrigResult
2130348.977.29
2154707.889.81
2196517.976.32
2251717.629.91
2332149.1412.45
2332648.6211.75
2382956.338.98

 

Please help

1 ACCEPTED SOLUTION
Jihwan_Kim
Super User
Super User

Hi,

Please check the below picture and the attached pbix file.

 

Jihwan_Kim_0-1713591366434.png

 

INDEX function (DAX) - DAX | Microsoft Learn

 

WINDOW function (DAX) - DAX | Microsoft Learn

 

2 rows moving avg DupResult: =
VAR _previousrow =
    MAXX (
        OFFSET (
            -1,
            ALL ( data ),
            ORDERBY ( data[rowid], ASC ),
            ,
            ,
            MATCHBY ( data[rowid] )
        ),
        data[rowid]
    )
VAR _t =
    WINDOW (
        -1,
        REL,
        0,
        REL,
        ALL ( data ),
        ORDERBY ( data[rowid], ASC ),
        ,
        ,
        MATCHBY ( data[rowid] )
    )
RETURN
    IF (
        _previousrow <> BLANK ()
            && HASONEVALUE ( data[rowid] ),
        AVERAGEX ( _t, data[DupResult] )
    )

 

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Visit my LinkedIn page by clicking here.


Schedule a meeting with me to discuss further by clicking here.

View solution in original post

2 REPLIES 2
Jihwan_Kim
Super User
Super User

Hi,

Please check the below picture and the attached pbix file.

 

Jihwan_Kim_0-1713591366434.png

 

INDEX function (DAX) - DAX | Microsoft Learn

 

WINDOW function (DAX) - DAX | Microsoft Learn

 

2 rows moving avg DupResult: =
VAR _previousrow =
    MAXX (
        OFFSET (
            -1,
            ALL ( data ),
            ORDERBY ( data[rowid], ASC ),
            ,
            ,
            MATCHBY ( data[rowid] )
        ),
        data[rowid]
    )
VAR _t =
    WINDOW (
        -1,
        REL,
        0,
        REL,
        ALL ( data ),
        ORDERBY ( data[rowid], ASC ),
        ,
        ,
        MATCHBY ( data[rowid] )
    )
RETURN
    IF (
        _previousrow <> BLANK ()
            && HASONEVALUE ( data[rowid] ),
        AVERAGEX ( _t, data[DupResult] )
    )

 

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Visit my LinkedIn page by clicking here.


Schedule a meeting with me to discuss further by clicking here.

Hi @Jihwan_Kim 
Thank you very very much 😉

Helpful resources

Announcements
OCT PBI Update Carousel

Power BI Monthly Update - October 2024

Check out the October 2024 Power BI update to learn about new features.

September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

October NL Carousel

Fabric Community Update - October 2024

Find out what's new and trending in the Fabric Community.

Top Kudoed Authors