Измерение Power BI: агрегирование по, фильтрация, группировка, простая математика - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь создать показатель, который вычисляет:

SUM (Num_Compliant) / SUM (Num_Asked) для округа, отфильтрованный по текущему финансовому году (т. Е. По дате или после 01/01/2018,или 1 июля 2018 г.).

District    Date        Section   Num_Compliant  Num_Asked
A           11/12/2018  I         3              8
A           1/12/2018   I         3              8
A           11/17/2018  II        1              6
A           5/18/2018   II        3              6
B           2/20/2019   I         4              8
B           4/20/2018   I         5              8
B           11/12/2018  II        6              6
B           1/12/2018   II        1              6
C           11/17/2018  I         2              8
C           5/18/2018   I         3              8
C           4/20/2018   II        5              6

При использовании приведенных выше выборочных данных я ожидаю следующих результатов

District    Numerator   Denominator Value
A           4           14          0.29
B           10          14          0.71
C           2           8           0.25

Я намеренно сделал знаменатель другим в районе С, чтобы отразить тот факт, чтоиногда разделы отсутствуют.

Я пытался решить эту проблему около дня, и я новичок в Power BI, поэтому я прошу прощения, если это очень простой вопрос.

1 Ответ

0 голосов
/ 21 февраля 2019

Следующая мера выглядит так, как будто она решает ваши потребности:

Value = 
var __date = DATE(2018,7,1)
var __Numerator = CALCULATE(sum(Compliancy[Num_Compliant]),ALLEXCEPT(Compliancy,Compliancy[Distict]),Compliancy[Date]>__date)
var __Denominator = CALCULATE(sum(Compliancy[Num_asked]),ALLEXCEPT(Compliancy,Compliancy[Distict]),Compliancy[Date]>__date)

return __Numerator/__Denominator

Обратите внимание, что вам придется изменить «Соответствие» на имя вашей таблицы в формуле DAX.Кроме того, дата в настоящее время жестко запрограммирована в DAX, возможно, лучше использовать срезы даты, чтобы вы могли изменять значения на лету.Мера без фильтра даты жестко запрограммирована следующим образом:

Value = 
var __Numerator = CALCULATE(sum(Compliancy[Num_Compliant]),ALLEXCEPT(Compliancy,Compliancy[Distict]))
var __Denominator = CALCULATE(sum(Compliancy[Num_asked]),ALLEXCEPT(Compliancy,Compliancy[Distict]))

return __Numerator/__Denominator

Таблица в Power BI:

Power BI Table

КакПримечание о том, на что следует обратить внимание:

  • Мера «Значение» должна быть установлена ​​в формате «Десятичное место» с 2 десятичными знаками.
  • Поле даты должно быть соответствующим образом установлено для типа данных «Дата».
...