Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hi all,
I am struggling to work out what I think should be some fairly straightforward DAX and can't find anything in the forum. Apologies if I have missed another post.
I have a client and product columns. What I am trying to achieve is to calculate what 'client coverage' each product has. Client coverage is defined by the percentage of clients that have a product and is between 0% and 100%. What is throwing a spanner in doing a COUNT(Products)/COUNT DISTINCT(Clients) is that some clients have some products more than once; the way I want my calculation to work is to be binary: A client has it or doesn't. I am not interested in how many times they have bought it.
Example data:
Client | Product |
A | 1 |
A | 2 |
A | 3 |
B | 1 |
B | 1 |
B | 2 |
C | 1 |
In this instance, all clients have product 1, but Client B has it twice. Therefore coverage should be 100% not 133% if I did the formula above.
Expected calculated output:
Product | Client Coverage |
1 | 100% |
2 | 67% |
3 | 33% |
Any help on this would be greatly appreciated. Thanks!
Hi @megane123 - try something like this
Client Coverage =
VAR __Prod =
COUNTX ( VALUES ( Coverage[Client] ), DISTINCTCOUNT ( Coverage[Product] ) )
VAR __Client =
COUNTROWS ( ALL ( Coverage[Client] ) )
RETURN
DIVIDE ( __Prod, __Client, 0 )
Hope this helps
David
User | Count |
---|---|
16 | |
15 | |
14 | |
12 | |
11 |
User | Count |
---|---|
19 | |
15 | |
14 | |
11 | |
9 |