2017-02-22 28 views
0

Использование PowerPivot и DAX Countrows вместе с опцией фильтра с столбцом, который имеет шесть возможных выражений. (Отлично, Хорошо, Приемлемо, Не хорошо, Плохо и пусто). Количество сообщений, я вычисляю процент удовлетворения, Делясь отлично и хорошо на ответы Всего. Моя проблема заключается в том, что функция countrows не принимает пробел как 0 и, таким образом, закручивает мои вычисления. Как мне обойти это?Получение DAX для возврата 0 вместо пустого

+0

А вы используя функцию DIVIDE? –

+1

Просьба опубликовать любые фрагменты кода, которые могут помочь людям понять вашу проблему. – AaronS

ответ

0

простой, но эффективный трюк, который я всегда использовал: добавить + 0 к вашей мерке.

данных только с "A" и "B":

data

До:

before

После добавления + 0:

after

+0

You Rock! Это так просто и работает! :) – Setu

0

Вы не хотите COUNTROWS, потому что строка с пробелом - это действительно строка.

Один из способов - создать весовой стол с пустым, не взвешенным вообще. Это делает оценку явной и легко меняющейся. Взаимосвязь между таблицей ответов и оценкой ответа, удовлетворенность - это просто среднее (которое вы можете отображать в процентах, если это необходимо).

Response Evaluation = DATATABLE (
    "Response", STRING, 
    "Weight", DOUBLE, 
    { 
     { "Excellent", 1 }, 
     { "Good", 1 }, 
     { "Acceptable", 0 }, 
     { "Not good", 0 }, 
     { "Poor", 0 }, 
     { "", BLANK() } 
    } 
) 

Satisfaction = AVERAGEX(Responses, RELATED('Response Evaluation'[Weight])) 

Так со следующими данными выборки, удовлетворенности составляет 40%.

Responses = DATATABLE (
    "Response", STRING, 
    { 
     { "Excellent" }, 
     { "Good" }, 
     { "Acceptable" }, 
     { "Not good" }, 
     { "Poor" }, 
     { "" },   
     { "Excellent" }, 
     { "Good" }, 
     { "Acceptable" }, 
     { "Not good" }, 
     { "Poor" }, 
     { "" }, 
     { "" }, 
     { "" }, 
     { "" }, 
     { "" }, 
     { "" } 
    } 
) 
+0

Примечание: вы можете иметь таблицы в Power Query. Я просто придерживался стороны DAX для обеспечения последовательности. –