Эффективные способы использования функции GROUPBY в LuckyTemplates

Эффективные способы использования функции GROUPBY в LuckyTemplates

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

Честно говоря, я не слишком часто использовал функцию GROUPBY , в основном потому, что в LuckyTemplates есть несколько способов решения задач с помощью других табличных функций. Например, я довольно часто использовал функцию SUMMARIZE, чтобы добиться того, чего хотел.

Одна вещь, которая делает функцию GROUPBY уникальной, — это своего рода синтаксис.

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

Оглавление

Создание таблиц с помощью функции GROUPBY

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

В моей модели у меня есть данные о продажах , клиентах , датах , регионах США , а также о продуктах.

Эффективные способы использования функции GROUPBY в LuckyTemplates

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

Изучите приведенную ниже формулу.

Эффективные способы использования функции GROUPBY в LuckyTemplates

Прежде всего, мне нужно сослаться на таблицу. В этом случае я сослался на таблицу продаж, потому что мне нужно сослаться на любые другие измерения из двух разных справочных таблиц. Вот почему у меня в формуле есть Products[Products Name] , а также по штатам. Эта часть формулы будет объединять данные как по продуктам, так и по штатам.

Эффективные способы использования функции GROUPBY в LuckyTemplates

Интересная часть здесь заключается в том, что я не могу поместить меру внутри этой части. Я должен использовать синтаксис, похожий на итерирующую функцию, которую я использовал. После этого взгляните, где я разместил в формуле функцию CURRENTGROUP .

Эффективные способы использования функции GROUPBY в LuckyTemplates

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

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

Эффективные способы использования функции GROUPBY в LuckyTemplates

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

Разработка функции GROUPBY внутри переменной

Я хочу вернуться к формуле Max Product Sales By State и показать вам еще одну технику.

Вместо использования функции GROUPBY в таблице калькулятора я могу поместить ее внутрь переменной. На этот раз я назвал переменную ProductStates .

Эффективные способы использования функции GROUPBY в LuckyTemplates

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

Прежде всего, я выполню агрегацию, поэтому я поместил виртуальную таблицу GROUPBY внутрь функции

Эффективные способы использования функции GROUPBY в LuckyTemplates

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

Посмотрите, что происходит, когда я выбираю конкретного клиента здесь. 

Эффективные способы использования функции GROUPBY в LuckyTemplates

Как отражено в отчете, максимальный объем продаж продукта клиентом по штатам составляет около 68 000 долларов США. Вы можете увидеть это в первой строке следующей таблицы. Кроме того, в таблице видны различные названия продуктов, которые покупатель приобрел, а также состояние. Общий объем продаж только для этого клиента составляет около 193 000 долларов.

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


Динамическое группирование клиентов по их рейтингу с помощью RANKX в LuckyTemplates
Использование DAX для сегментации и группировки данных в LuckyTemplates
Работа с повторяющимися функциями в DAX

Заключение

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

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

Я, конечно, надеюсь, что вы все же узнали что-то об этой конкретной функции. Не забудьте заглянуть на LuckyTemplates TV, чтобы найти много другого интересного контента.

С уважением.

Сэм


Что такое 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? Все, что тебе нужно знать