Использование функции SUMMARIZE в вычислении MAXX

Использование функции SUMMARIZE в вычислении MAXX

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

Я попытался использовать summarize, чтобы создать таблицу, в которой указаны только причины задержек, NHS, Social Care и оба столбца B. Делая это, я надеялся, что смогу создать столбец с именем totals, который суммирует 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/en/1184250523

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
2 677
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Сначала создайте меру для общих причин:

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

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

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

Результат:

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

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

Не могли бы вы помочь мне понять, почему моя попытка использовать sum и maxx не сработала?

KvothesLute 28.05.2019 15:06

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

RADO 28.05.2019 15:12

У меня сложилось впечатление, что в сводной таблице, которую я сделал, есть только столбец причин и значения, которые мне нужны. Как появились дополнительные поля? Я также добавил отдельное значение вокруг своей таблицы в своем резюме, но это, похоже, тоже не помогло.

KvothesLute 28.05.2019 15:16

Я переформатировал вашу формулу в вопросе, посмотрите. В части «Сводка» говорится: возьмите таблицу «csv», сгруппируйте ее по [Причина задержки], [NHS], [Социальная помощь], [Оба B], а затем добавьте вычисляемый столбец «итогов» для каждой полученной записи.

RADO 28.05.2019 15:28

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

KvothesLute 28.05.2019 15:34

Хм... Я не уверен, что понимаю часть "отличного csv". Если вы опубликуете формулу и объясните идею, стоящую за ней, я объясню, почему она не работает.

RADO 28.05.2019 15:40

Давайте продолжить обсуждение в чате.

KvothesLute 28.05.2019 15:40

Другие вопросы по теме