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

Join us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.

Reply
sean_cochran
Resolver I
Resolver I

Conditional Distinct Count of Values

In a working Deneb visual that displays survey data, I have a relatively flat dataset structured this way:

sean_cochran_2-1726078186567.png

 

When aggregating this data, I want a count of distinct values for "person" - ONLY for rows where "complete" = 0. Also, I do not want to filter the data to achieve this, because I need the filtered rows later for other purposes. My first strategy was to calculate a new column called "distinctPerson" that listed the person column value if "complete" == 1 and showed null otherwise, but the "distinct" count sees 'null' as a distinct value rather than ignoring it. Here is a link to the example in the vega editor. As you can see from the chart, "null" values - which are cases where there is no value in the person column because "complete" = 0 - are counted as distinct values:

sean_cochran_4-1726079375629.png

 

How can I remove these null values from the count (not the chart, the actual aggregation in the background) without filtering the dataset to "datum.Completed == 1" since this would remove necessary information for later? I have tried the following concepts without success:

 

  1. Perform transforms within a lookup (this doesn't seem to work - maybe I'm missing something?)
  2. Define and transform an additional data object that references my initial named dataset and join onto original (I haven't figured out a way to get this working)

If I'm missing something major, please let me know - or if one of the two failed attempts I listed is likely to work, and I'm just using the wrong syntax, let me know and I can provide more info.

 

Thanks in advance!

 

@giammariam 

 

UPDATE:  pbix containning the visual and dataset here.

 

1 ACCEPTED SOLUTION
sean_cochran
Resolver I
Resolver I

I found a simple solution. I used a "missing" op in my aggregation step to detect when null values were present in the data, and then subtracted 1 from the value of a "distinct" aggregation in a later calculate step whenever a null value was present in the series. Sample chart and dataset available at this link in the Vega editor.

Chart below:

sean_cochran_0-1726265049166.png

 

View solution in original post

3 REPLIES 3
sean_cochran
Resolver I
Resolver I

I found a simple solution. I used a "missing" op in my aggregation step to detect when null values were present in the data, and then subtracted 1 from the value of a "distinct" aggregation in a later calculate step whenever a null value was present in the series. Sample chart and dataset available at this link in the Vega editor.

Chart below:

sean_cochran_0-1726265049166.png

 

lbendlin
Super User
Super User

Can you share the sample dataset?

Link to pbix file with sample dataset and chart here.

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.

Top Solution Authors