Функции DAX в LuckyTemplates: использование итераторов

Функции DAX в LuckyTemplates: использование итераторов

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

Когда вы узнаете больше и углубитесь в формулы DAX, вы обнаружите, что используете повторяющиеся функции чаще, чем вы думаете. Они более универсальны, чем простые функции агрегирования , такие как  SUM  или  AVERAGE , и я демонстрирую это в этом первом  . 

Оглавление

Использование AVERAGEX вместо SUM 

В этом сообщении на форуме участник пытался обобщить статистику безопасности из наблюдений, сделанных человеком, которые были записаны с указанием даты. Наблюдатели могут вводить наблюдения в один и тот же день, а также могут вводить несколько наблюдений каждый день. Он хотел определить среднее значение за период, и вот какие расчеты он создал: 

Функции DAX в LuckyTemplates: использование итераторов

Решение было довольно простым для такого типа анализа. Я предложил ему использовать AVERAGEX вместо логики, которую он сделал. Я порекомендовал ему некоторые из моих руководств по итерации функций, особенно по AVERGEX.

Я также поделился с ним учебным пособием о том, как рассчитать сумму средних значений . Здесь важно усвоить, что вы хотите выполнить итерацию с помощью функции итерации . Вам нужно понять , как работает функция СРЗНАЧ .

Использование СУММ с функцией ЕСЛИ

Другой пример сценария, который показывает, что итерационные функции являются ключевыми для использования, — это . У участника был столбец с 0 и 1, в зависимости от конкретных критериев стажера. Ему нужно было получить сумму из столбца X, если она равна 0, и сумму из столбца Y, если она равна 1. У него возникли трудности с созданием контекста проверки строки за строкой в ​​LuckyTemplates. Это были данные, с которыми он работал:

Функции DAX в LuckyTemplates: использование итераторов

А это был его расчет в Excel:

ЕСЛИ(ЯчейкаA1=1; Истина; Ложь)

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

Функции DAX в LuckyTemplates: использование итераторов

Здесь я использую СУММЛ с функцией ЕСЛИ , но вы также можете использовать ФИЛЬТР с ВЫЧИСЛИТЬ аналогичным образом. Другим примером того, как и когда использовать функции СУММ и ЕСЛИ, является это , где участник пытался создать комбинированный план/фактический прогноз на оставшуюся часть года. Вот как он сделал бы это в Excel:

Функции DAX в LuckyTemplates: использование итераторов

Его беспокоило то, что годовой итог был неправильным. Формула, которую он сделал, предполагает, что ExFactory имеет значение за год, беря это значение, а не вычисляя каждый месяц, а затем суммируя все месячные результаты.

После того, как я просмотрел данные, которые он сделал в LuckyTemplates, я обнаружил, что проблема была не только в формуле, но и в том, что участник использовал вычисляемые столбцы вместо показателей для своих вычислений. Мое предложение, как я всегда упоминаю при работе с DAX, заключалось в том, чтобы он начал с самых простых мер, таких как эта:

Функции DAX в LuckyTemplates: использование итераторов

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

Функции DAX в LuckyTemplates: использование итераторов

Функции DAX в LuckyTemplates: использование итераторов

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

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

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

Итерирующие функции и структура модели

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

Участник хотел установить контроль над активированными учетными записями, но не имел продаж, подсчета учетных записей и возможности идентифицировать имена клиентов.

Функции DAX в LuckyTemplates: использование итераторов

В этом сценарии это должна быть просто комбинация функций ВЫЧИСЛ и ФИЛЬТР или использование повторяющихся функций, таких как СУММ, СЧЁТЕС и СРЗНАЧ. Понимание итерационных функций может помочь вам решить подобные проблемы на уровне строк. Однако, когда я посмотрел на модель, меня действительно заинтересовала общая настройка.

Функции DAX в LuckyTemplates: использование итераторов

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


Работа с функциями итерации в DAX
Функции итерации на языке DAX — подробный пример
использования функций итерации SUMX и AVERAGEX в LuckyTemplates

Заключение

Примеры, которые я выделил в этом посте, — это вопросы, заданные участниками форума LuckyTemplates. Это распространенные сценарии использования функций DAX в LuckyTemplates, когда вычисления дают ошибочные результаты из-за неверных используемых функций. Формулы должны иметь повторяющиеся функции, которые используются правильным образом.

Кроме того, модель данных также может способствовать возникновению проблем с вычислениями, когда в модели есть отношения, которые не работают. Обычно это происходит, когда модель слишком сложна и плохо настроена. После того, как вы разберетесь с этим, вы можете работать над своими формулами с правильной комбинацией DAX.

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

Всего наилучшего!

***** Изучаете LuckyTemplates? *****







Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать