The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hi Experts,
I am looking for a calculation that would give me the percentage of blank fields based on another value.
here is an example.
This is how my data looks like
Column1 | Column2 |
1 | 23 |
1 | 45 |
2 | |
2 | 67 |
3 | |
3 | |
3 |
so here we have no blanks in column2 for 1, 2 is half empty and for 3 is totally empty
The expected result is a table with one column as above and the calculated column showing the percentage of blanks:
column1 | calc_column |
1 | 0% |
2 | 50% |
3 | 100% |
Thanks ks in advance for your help!
Solved! Go to Solution.
hi @kanebuddy
try to plot a table visual with the column1 and a measure like
Measure =
VAR _countall =
COUNTROWS( TableName)
VAR _countblank =
COUNTROWS(
FILTER(
TableName,
TableName[Column2]=BLANK()
)
)
RETURN
DIVIDE(_countblank, _countall, 0)+0
it worked like:
hi @kanebuddy
try to plot a table visual with the column1 and a measure like
Measure =
VAR _countall =
COUNTROWS( TableName)
VAR _countblank =
COUNTROWS(
FILTER(
TableName,
TableName[Column2]=BLANK()
)
)
RETURN
DIVIDE(_countblank, _countall, 0)+0
it worked like:
Hi Freemanz,
thanks for the reply, however I get only 1 and 0 as result of the measure, that doesnt look like percentage values. Items that should have a 100% gets 0 and empty ones get 1 and an item that has one blank out of 11 gets a 0,26. Cant see whats wrong..
Stop, thanks for that, I was fooling myself. Setting the Measure to display as Percentage on the modeling Tab and then think again about the expected result brings me to the conclusion thats doing exactly what it should.
Thanks again for the very quick help!
hi @kanebuddy
you may also write a calcualted table like:
Table =
ADDCOLUMNS(
VALUES(TableName[Column1]),
"Pct",
CALCULATE(
VAR _countall =COUNTROWS( TableName)
VAR _countblank =
COUNTROWS(
FILTER(
TableName,
TableName[Column2]=BLANK()
)
)
RETURN
DIVIDE(_countblank, _countall, 0)+0
)
)
it worked like:
User | Count |
---|---|
15 | |
8 | |
6 | |
6 | |
6 |
User | Count |
---|---|
23 | |
14 | |
13 | |
8 | |
8 |