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

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
phoenix20
New Member

Column creation - Ratio to sum by group

Hello all

I am struggling quite a lot with the following case. What I want to achieve is to create a column (important) per row that calculates the ratio of a value of that row, to the total by a group. Below is an example with excel with the formula:

 

Example

 

So, the highlighted column is what I want. For example row 2 , the 11,8 is calculated as a the value (B2) to the sum of the cars . The reason I need a column is that I want to use these weights later for creating another column.

 

When I create the following formula alone in Power BI to get totals per group, it works fine:

 

 

Sum_per_group = CALCULATE(SUM(RawData[Sales),RawData[Type]=RawData[Type])

 

If i then enter the value , so to find the ratio , as per below, I get only "Nan" ! (I added only the [Sales]/  )

Ratio = [Sales] /  CALCULATE(SUM(RawData[Sales),RawData[Type]=RawData[Type])

 

 

 

What am I doing wrong? 😕

1 ACCEPTED SOLUTION
Eric_Zhang
Microsoft Employee
Microsoft Employee


@phoenix20 wrote:

Hello all

I am struggling quite a lot with the following case. What I want to achieve is to create a column (important) per row that calculates the ratio of a value of that row, to the total by a group. Below is an example with excel with the formula:

 

Example

 

So, the highlighted column is what I want. For example row 2 , the 11,8 is calculated as a the value (B2) to the sum of the cars . The reason I need a column is that I want to use these weights later for creating another column.

 

When I create the following formula alone in Power BI to get totals per group, it works fine:

 

 

Sum_per_group = CALCULATE(SUM(RawData[Sales),RawData[Type]=RawData[Type])

 

If i then enter the value , so to find the ratio , as per below, I get only "Nan" ! (I added only the [Sales]/  )

Ratio = [Sales] /  CALCULATE(SUM(RawData[Sales),RawData[Type]=RawData[Type])

 

 

 

What am I doing wrong? 😕


@phoenix20

You can try to create a calculated column as below. See attached pbix file.

Ratio To Type =
RawData[Sales]
    / CALCULATE ( SUM ( RawData[Sales] ), ALLEXCEPT ( RawData, RawData[Type] ) )

Capture.PNG

View solution in original post

3 REPLIES 3
Eric_Zhang
Microsoft Employee
Microsoft Employee


@phoenix20 wrote:

Hello all

I am struggling quite a lot with the following case. What I want to achieve is to create a column (important) per row that calculates the ratio of a value of that row, to the total by a group. Below is an example with excel with the formula:

 

Example

 

So, the highlighted column is what I want. For example row 2 , the 11,8 is calculated as a the value (B2) to the sum of the cars . The reason I need a column is that I want to use these weights later for creating another column.

 

When I create the following formula alone in Power BI to get totals per group, it works fine:

 

 

Sum_per_group = CALCULATE(SUM(RawData[Sales),RawData[Type]=RawData[Type])

 

If i then enter the value , so to find the ratio , as per below, I get only "Nan" ! (I added only the [Sales]/  )

Ratio = [Sales] /  CALCULATE(SUM(RawData[Sales),RawData[Type]=RawData[Type])

 

 

 

What am I doing wrong? 😕


@phoenix20

You can try to create a calculated column as below. See attached pbix file.

Ratio To Type =
RawData[Sales]
    / CALCULATE ( SUM ( RawData[Sales] ), ALLEXCEPT ( RawData, RawData[Type] ) )

Capture.PNG

Ashish_Mathur
Super User
Super User

Hi @phoenix20,

 

Try this clculated column formula

 

=SUM(Data[Sales])/CALCULATE(SUM(Data[Sales]),FILTER(Data,Data[Type]=EARLIER(Data[Type])))

 

Hope this helps.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
davehus
Memorable Member
Memorable Member

Hi @phoenix20,

 

Try:

 

SalesbyGroup = CALCULATE(SUM('Table'[sales]),ALLEXCEPT('Table', 'Table'[Type]))

 

Ratio = DIVIDE([Total Sales],[SalesbyGroup])

 

This should give you the desired outcome.

 

Rgds,

 

Dave

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

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