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

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
Anonymous
Not applicable

Divide based on a grouped column

Hello everyone,

 

I have a table with 5 columns [Date, ID, ZipCode, Numeric, Condition]

 

DateIDZipCodeNumberCondition
27/03/2020AMTS117525Yes
27/03/2020BMTS117525Yes
19/03/2020CMTS117525Yes
25/02/2020DMTS0No
20/01/2020EFCM120368Yes
13/03/2020FFCM120368Yes
17/03/2020GFCM0No
05/04/2020HMTS247831Yes
31/03/2020IMTS0No
08/04/2020JMTS247831Yes

 

The goal is to divide the Number with the total count of "Yes".

  • For ZipCode "MTS" I want to divide 117.525/3, being 3 the total number of Yes for that ZipCode and for that Number. The Number results from a condition based on the Date.
  • For ZipCode "FCM" I want to divide 120.368/2.
  • Again for MTS, 247.831/2
  • For the rows where the Condition = "No" the result should be 0.


How do i lock that count for each row? 

Edit: I add another ZipCode to clarify the goal

1 ACCEPTED SOLUTION
amitchandak
Super User
Super User

@Anonymous , New column

 

new column =divide( [Number], countx(filter(Table, [zip code] =earlier([Zip Code]) && [Condition]= "Yes" ), [ID] ) )

Full Power BI Video 20 Hours YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

View solution in original post

5 REPLIES 5
tamerj1
Super User
Super User

@Anonymous 

Use this for a calculated column

Column1 =
VAR ZipCodeTable =
    CALCULATETABLE ( Table, ALLEXCEPT ( Table, Table[ZipCode] ) )
VAR YesTable =
    FILTER ( ZipCodeTable, Table[Condition] = "Yes" )
RETURN
    IF (
        Table[Condition],
        0,
        DIVIDE ( SUMX ( YesTable, Table[Number] ), COUNTROWS ( YesTable ) )
    )
tamerj1
Super User
Super User

Hi @Anonymous 

I guess you are using table visual by ZipCode. Then you can use

 

Measure1 =
DIVIDE (
    SUM ( Table[Number] ),
    COUNTROWS ( FILTER ( Table, Table[Condition] = "Yes" ) )
)

 

Anonymous
Not applicable

@tamerj1 I edit the question

amitchandak
Super User
Super User

@Anonymous , New column

 

new column =divide( [Number], countx(filter(Table, [zip code] =earlier([Zip Code]) && [Condition]= "Yes" ), [ID] ) )

Full Power BI Video 20 Hours YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube
Anonymous
Not applicable

When the condition is "No" the new column should be 0.

The output should be 39175 | 39175 | 39175 | 0 (these are rows). 

The zipcode can change along the table

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

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

Feb2025 NL Carousel

Fabric Community Update - February 2025

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