cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
noobpowerbiuser
Frequent Visitor

Keep row values as sum, but change total as average in matrix

As the title implies, is it possible to change the total of a matrix into average without changing the row values (sum)? I have seen solutions where it involves modifying the column and just creating measures for column values, but the column headers should be dynamic as they are date columns and they will add on the longer the time goes. Kindly see sample data below. I know there is a way to have Monthly row totals be made into measures and show that into the table instead, but that is not really dynamic. Can anyone please help? 

Thank you.

noobpowerbiuser_0-1667362594355.png

 

1 ACCEPTED SOLUTION
v-yalanwu-msft
Community Support
Community Support

Hi, @noobpowerbiuser ;

You could create a measure

Measure =
IF (
    ISINSCOPE ( 'Table'[Date].[Year] ),
    SUM ( 'Table'[values] ),
    AVERAGEX (
        SUMMARIZE (
            'Table',
            [Catetory],
            [Date].[Year],
            [Date].[Month],
            "1", SUM ( 'Table'[values] )
        ),
        [1]
    )
)

The final show:

vyalanwumsft_0-1667443931190.png


Best Regards,
Community Support Team _ Yalan Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

4 REPLIES 4
v-yalanwu-msft
Community Support
Community Support

Hi, @noobpowerbiuser ;

You could create a measure

Measure =
IF (
    ISINSCOPE ( 'Table'[Date].[Year] ),
    SUM ( 'Table'[values] ),
    AVERAGEX (
        SUMMARIZE (
            'Table',
            [Catetory],
            [Date].[Year],
            [Date].[Month],
            "1", SUM ( 'Table'[values] )
        ),
        [1]
    )
)

The final show:

vyalanwumsft_0-1667443931190.png


Best Regards,
Community Support Team _ Yalan Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

jdbuchanan71
Super User
Super User

@noobpowerbiuser 

you can use HASONEVALUE to check if you are on a Resource Type row like this.

Amount Measure = 
IF ( 
    HASONEVALUE ( 'Table'[Resource Type] ), 
    SUM ( 'Table'[Amount] ), 
    AVERAGEX ( VALUES ( 'Table'[Resource Type] ), CALCULATE ( SUM ('Table'[Amount] ) ) ) 
)

jdbuchanan71_1-1667366296789.png

 

Sorry, this makes the column totals as average, but I want the row totals in average. Basically just switched around

amitchandak
Super User
Super User

@noobpowerbiuser , Assume you are using a measure M1 in the matrix

 

AverageX(Summarize(Fact, Date[FY Year], Date[Qtr], Fact[Resource Group]), [M1])

Helpful resources

Announcements
PBI Sept Update Carousel

Power BI September 2023 Update

Take a look at the September 2023 Power BI update to learn more.

Learn Live

Learn Live: Event Series

Join Microsoft Reactor and learn from developers.

Dashboard in a day with date

Exclusive opportunity for Women!

Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!

MPPC 2023 PBI Carousel

Power Platform Conference-Power BI and Fabric Sessions

Join us Oct 1 - 6 in Las Vegas for the Microsoft Power Platform Conference.

Top Solution Authors