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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
omarevp
Helper II
Helper II

Distinctcount considering Average and some filters

Hi guys,

 

I know this should be easy, but I need help.

 

I have a list of professionals who have different number of works, every work has a "Score" depending on their performance; also, they have works on different "domains" which are the place where they do the job and "Roles" which are the type of jobs. I need to know IN MEASURE the number of professional who have LOW SCORE IN AVERAGE and add the filter by domain in the same measure. I did it with a table and applied the filters. This is the result:

 

As you can see, the total of professional with low score are 4 (by distinct count). That is the number I need in measure 😞

 

Captura.PNG

 

 

 

 

 

1 ACCEPTED SOLUTION

@omarevp

 

Give this a shot

 

low score pros =
CALCULATE (
    COUNT ( 'public tuten_booking'[tuten_user_professional] ),
    'public tuten_booking'[domain] <> "easy",
    'public tuten_booking'[domain] <> "sodimac",
    FILTER (
        ALLSELECTED ( 'public tuten_booking'[tuten_user_professional] ),
        [average] <= 3.8
    )
)

Regards
Zubair

Please try my custom visuals

View solution in original post

8 REPLIES 8
v-jiascu-msft
Employee
Employee

Hi @omarevp,

 

Please pay attention to your privacy. Mask the private data.

 

Best Regards,

Dale

Community Support Team _ Dale
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
dearwatson
Responsive Resident
Responsive Resident

Hi omarevp

 

First lets create your distinct count measure

 

Professionals = DISTINCTCOUNT(TableName[tuten_user_professional])

 

If the "average" column is just a column based on the filtering in your screenshot you could get away with a basic calculate I think

 

Low scoring pros = CALCULATE([Professionals],FILTER(TableName,TableName[average] <= 3.8))

 

Thats a start at least... let me know how it goes.

 

Cheers

Greg

 

"The commonality between science and art is in trying to see profoundly - to develop strategies of seeing and showing." - Edward Tufte

@dearwatsonthanks for your answer.

 

Nope, "average is not a column, it is a measure I made from "score" column.

 

I tried to do it like this:

 

First I created a measure called "average" which is average = AVERAGE(table1[score])

 

then:

 

low score pros = CALCULATE(DISTINCTCOUNT(tuten_user_professionals),table1[domain]<>"easy",table1[domain]<>"sodimac", [average]<=3,8)           didnt work using the "average" measure because it says: a function CALCULATE has been used in a True/False expression that is used as a table filter expression. This is not allowed.

 

then i tried with AVERAGE as a function inside the new measure:

 

low score pros = CALCULATE(DISTINCTCOUNT(tuten_user_professionals),table1[domain]<>"easy",table1[domain]<>"sodimac", AVERAGE(table1[score]<=3,8)        didnt work too using the function calling the column "score" because it says: a function AVERAGE has been used in a True/False expression that is used as a table filter expression. This is not allowed.

 

What I need is to add the condition that is has to be: show me the total of professionals that are from "xx" domain, which their average score is <= 3,8, not the score from a specific work, the average score from all their scored works.

 

 

should be like this: 

 

If I take the original data with their score per work:

Captura.PNG

 

Then, I can set the "average" option for "score" field or i can replace it for the "average" measure and apply the filter average<=3,8 and it goes like this: (it reduces the number of rows, obviously)

 

Captura.PNG

 

So far so good, but, I need to know the number of professionals in measure. And which are those professionals?:

 

annelk37@gmail.com

irenemarisol1@gmail.com

jorgeleonardo2906@hotmail.com

parra.electrico2702@gmail.com

 

TOTAL OF PROFESSIONAL WITH LOW SCORE FROM XXXX DOMAIN: 4 (applying distinctcount)

 

I hope I could explain myself.

 

Thanks in advance!!!

Hi,

 

Try this

 

=CALCULATE(DISTINCTCOUNT(tuten_user_professionals[column]),FILTER(Table1,(table1[domain]<>"easy"||table1[domain]<>"sodimac")&&[average]<=3.8))

 

The DISTINCTCOUNT() requires a column reference.  So in the highlighted portion of the formula, specify the column in which you want to do the distinct count.


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

@Ashish_Mathurthanks.

 

Sorry, but i didnt write the complete formula.

 

I already tried with

 

name of the table: public tuten_booking

 

low score pros = CALCULATE(COUNT('public tuten_booking'[tuten_user_professional]),'public tuten_booking'[domain]<>"easy",'public tuten_booking'[domain]<>"sodimac",[average]<=3,8)

 

It appears this message "a function 'CALCULATE' has been used in a True/False expression that is used as a table filter expression. This is not allowed"

 

I need a formula like this:

 

Calculate the total of professional (distinctcount) whos domain<>"easy" or "sodimac" AND the AVERAGE of ALL of their works is <= 3,8

 

In the table I added before, there are 4 professional, I need a measure that show me only that number.

 

Thanks!

Hi,

 

Try this

 

=CALCULATE(COUNT('public tuten_booking'[tuten_user_professional]),FILTER('public tuten_booking','public tuten_booking'[domain]<>"easy"&&'public tuten_booking'[domain]<>"sodimac"&&[average]<=3,8))

 

Does this work?


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

@Ashish_Mathur@dearwatson

 

I would really really appreciate if you guys can help me.

 

 

@omarevp

 

Give this a shot

 

low score pros =
CALCULATE (
    COUNT ( 'public tuten_booking'[tuten_user_professional] ),
    'public tuten_booking'[domain] <> "easy",
    'public tuten_booking'[domain] <> "sodimac",
    FILTER (
        ALLSELECTED ( 'public tuten_booking'[tuten_user_professional] ),
        [average] <= 3.8
    )
)

Regards
Zubair

Please try my custom visuals

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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