Использование функции SUMMARIZE в расчете MAXX - PullRequest
1 голос
/ 28 мая 2019

enter image description here

Я пытаюсь агрегировать следующие значения (NHS, Social Care и Оба B) по столбцу причин для задержек, чтобы я мог найти причину с наибольшим значением (из 3 указанных выше комбинированных значений).

Я пытался использовать summarize для создания таблицы, содержащей только причины задержек, столбцы NHS, Social Care и Оба B. Делая это, я надеялся, что смогу создать столбец с именем итоги, который объединит столбцы NHS, Social Care и оба столбца B в этой обобщенной таблице, что даст мне итоговые значения для каждой причины задержки.

Хотя, когда я пытался запустить функцию maxx вокруг моего столбца итогов, мне показались неправильные значения.

Я попытался обернуть мою таблицу с помощью отдельной функции, чтобы она объединяла все столбцы в моем обобщении вместе, но это тоже не помогло.

Max Delays =
MAXX (
    SUMMARIZE (
        csv,
        csv[Reason For Delay],
        csv[NHS],
        csv[Social Care],
        csv[Both B],
        "totals", CALCULATE ( SUM ( csv[NHS] ) + SUM ( csv[Both B] ) + SUM ( csv[Social Care] ) )
    ),
    [totals]
)

Меньшая таблица (которая должна представлять итоговую таблицу) на приведенном выше рисунке со столбцом итоговых значений показывает значения, которые я ожидаю перенести в мой максимальный расчет, где я ожидаю, что максимальное значение будет 277.

Максимальное значение, которое я получаю вместо этого, равно 182. Это максимальное значение в таблице ниже, где у меня есть несколько дубликатов моих причин для столбца задержки, а 182 - самое высокое значение.

Я загрузил образец файла pbix, над которым я работаю, если это может быть полезным; https://www.zeta -uploader.com / ru / 1184250523

1 Ответ

1 голос
/ 28 мая 2019

Сначала создайте показатель по общим причинам:

Total Reasons = SUM(csv[NHS]) + SUM(csv[Both B]) + SUM(csv[Social Care])

Во-вторых, создайте меру по максимальной причине:

Max Reason = MAXX( VALUES(csv[Reason For Delay]), [Total Reasons])

Результат:

enter image description here

Как это работает:

  • Первая мера для удобства. Вы можете использовать его в других формулах, делая код чище;
  • Во второй мере мы создаем список различных причин, используя VALUES. Затем MAXX выполняет итерации по этому списку, вычисляет итоги по каждой причине, а затем находит наибольшее из них.
...