+7 (495) 230-01-45

Что такое DAX и как этот язык используют в анализе данных


Автор: Skillbox MediaВремя прочтения: 8 минДата публикации: 14.12.2023
Теги: DAX, анализ данных

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

В статье Андрей Чепурной, руководитель команды Power BI департамента аналитических решений «КОРУС Консалтинг», рассказывает, как устроен DAX и какие задачи решают с его помощью. Материал будет полезен начинающим BI-аналитикам, а также всем специалистам, которые работают с данными.

  • Что такое DAX
  • Какие задачи решают с помощью DAX
  • Как работает DAX в Power BI
  • В какой программе удобнее проводить расчёты с помощью DAX
  • Где и как изучать DAX

В статье нет подробных инструкций по работе с DAX: она даёт общее представление о работе с языком. Мы говорим о базовых понятиях и принципах DAX.





Что такое DAX

DAX (Data Analysis Expressions) дословно переводится как «выражения для анализа данных». Это язык, с помощью которого составляют функции и формулы в программах для аналитики.

DAX разработала компания Microsoft. Этот язык входит в состав её программ для бизнес-аналитики и анализа данных — Power BI, Analysis Services и надстройки Power Pivot для Excel.

Основная цель DAX — помочь выполнить сложный анализ и комплексные расчёты в случаях, когда задействовано много данных.

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

Важно понимать, что DAX — не язык программирования, а функциональный язык. Это означает, что на нём не пишут программы или макросы — как это делают, например, на Python, Java или VBA. С помощью DAX создают запросы для проведения расчётов и анализа данных.

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

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


Так выглядит интерактивный отчёт в MS Power BI
Скриншот: Microsoft / Skillbox Media

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



Какие задачи решают с помощью DAX: примеры

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

Вот несколько сценариев использования DAX:

  • Провести финансовый анализ. DAX помогает обрабатывать большие объёмы данных о финансах и бухгалтерии компании. Например, с его помощью можно объединить данные нескольких таблиц и рассчитать нужные показатели — прибыль, рентабельность, маржинальность и другие. Затем на их основе создать наглядные отчёты, с помощью которых будет легче принимать дальнейшие решения.
  • Анализировать продажи и маркетинг. С помощью DAX можно, например, мониторить количество продаж в режиме реального времени, определять эффективность маркетинговых кампаний, выяснять, какие товары и услуги приносят больше прибыли.
  • Анализировать поведение клиентов. DAX позволяет понять, как клиенты взаимодействуют с бизнесом. Например, с его помощью можно определить, какие продукты или услуги наиболее популярны, что именно привлекает в них покупателей, и прогнозировать, что может понадобиться клиентам в будущем.
  • Управлять запасами и производством. С помощью DAX можно создавать формулы для расчёта оборачиваемости запасов, прогнозировать потребность в товарах или анализировать эффективность производственных линий.
  • Управлять персоналом. С помощью DAX анализируют производительность и эффективность сотрудников. Это позволяет прогнозировать текучесть кадров и создавать программы мотивации. Также с помощью DAX можно рассчитывать KPI.


Как устроен DAX: основные понятия и этапы работы с ним

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

Чтобы работать с DAX, важно понимать ключевые термины: меры, вычисляемые столбцы, вычисляемые таблицы, контекст и связи. Давайте разберёмся.

Меры (Measures). По-другому их называют метриками. Это выражения, с помощью которых проводят разные вычисления. Например, можно создать меру для подсчёта общей прибыли или среднего значения. В результате появляется новое значение, которое затем используют при других расчётах или при визуализации.

Вычисляемые столбцы (Calculated columns). Выражения, которые проводят вычисления для каждой строки в таблице и создают новый столбец с результатами. Их можно использовать, например, для автоматического расчёта суммы заказов каждого клиента в базе данных. Вычисляемый столбец проведёт построчный расчёт отдельно для каждого покупателя и вынесет итоговые суммы в новый столбец.

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

Контекст (Context). Элемент DAX, который определяет, какие данные участвуют в расчётах. Есть два вида контекста — контекст строки и контекст фильтра.

  • Контекст строки. Когда формула работает в этом контексте, она учитывает только данные в текущей строке. Например, если создать вычисляемый столбец «Общая стоимость» с формулой «Цена × Количество», контекст строки будет применять эту формулу к каждой строке отдельно и найдёт общую стоимость для каждого товара.
  • Контекст фильтра. В этом случае формула учитывает выборку данных, которые соответствуют заданным условиям. Например, если использовать меру «Сумма продаж» с фильтром по месяцу, контекст соберёт данные для расчёта только из строк, которые относятся к выбранному месяцу.

Связи (Relationships). Это способ объединить данные из нескольких таблиц. Допустим, есть две таблицы: одна с информацией о клиентах, другая — с информацией о заказах от этих клиентов. Между таблицами можно установить связь по значению, которое повторяется и в первой, и во второй таблице, — например, по уникальному номеру клиента. С помощью такой связи можно будет найти все номера заказов клиента или рассчитать общую сумму его покупок. Связи позволяют увидеть полную картину и провести более глубокий анализ.

Обычно работа с DAX проходит в четыре этапа:

1. Загрузить данные. Пользователь загружает в программу данные из разных источников. Например, из электронных таблиц, текстовых файлов, баз данных, веб-сайтов и так далее.




Добавляем данные в Power BI
Скриншот: курс Skillbox «Power BI»

Добавляем данные в Power BI
Скриншот: курс Skillbox «Power BI»


2. Моделировать данные. Для этого устанавливают связи между разными таблицами и создают из них общую модель. Цель этого этапа — связать данные таблиц в общей структуре и определить, каким образом данные из одной таблицы будут взаимодействовать с данными из других таблиц.


Устанавливаем связи между разными таблицами
Скриншот: курс Skillbox «Power BI»

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




Создаём меру для расчёта суммы продаж
Скриншот: курс Skillbox «Power BI»

Создаём меру для расчёта суммы продаж
Скриншот: курс Skillbox «Power BI»


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


Пример готового отчёта
Скриншот: курс Skillbox «Power BI»


В какой программе удобнее проводить расчёты с помощью DAX

Выше мы говорили, что DAX используют в программах для анализа данных от Microsoft: Power BI, Analysis Services и надстройке Power Pivot для Excel. Функции DAX в этих программах схожи, но есть некоторые различия.

На мой взгляд, в Power BI больше возможностей для анализа данных. Например, в нём больше вариантов для визуализации данных и публикации отчётов. Интерфейс для написания функций в Power BI тоже удобнее.

В Power BI можно работать совместно с другими пользователями — с помощью репозиториев. Тогда изменения, которые внесли на одном устройстве, сразу видны на других устройствах в режиме реального времени.

Ещё Power BI развивается активнее других программ, поэтому его пользователи получают доступ к новым функциям DAX быстрее, чем пользователи Power Pivot и Analysis Services.

Power BI предпочтительнее использовать для решения сложных задач, где перечисленные преимущества необходимы. Для простых сценариев хорошим вариантом может быть Excel Power Pivot. Он также подойдёт пользователям, которым больше нравится Excel.



Где и как изучать DAX

Изучать DAX можно самостоятельно или на курсах. Для самостоятельного изучения рекомендую такие источники:

  • Официальные материалы Microsoft. На сайте компании есть справочник по DAX. В нём собраны обучающие видео и текстовые документы, пошаговые инструкции по работе с отдельными возможностями DAX, примеры функций, описания их синтаксиса и так далее.
  • Книги. Существует много книг по DAX и Power BI, в которых тоже собраны подробные инструкции и примеры. Например, «Подробное руководство по DAX» Марко Руссо и Альберто Феррари или «Формулы DAX для Power Pivot» Роба Колли.
  • Форумы и сообщества. Например, телеграм-чаты Power BI Group RU и Power BI Proffessionals. В них можно найти советы опытных пользователей DAX или задать свои вопросы и получить ответы.

Важно понимать, что самостоятельное изучение DAX — «игра вдолгую». Если вы хотите стать уверенным пользователем быстрее, лучше рассмотреть курсы.



Главное о DAX в 4 пунктах

  1. DAX — функциональный язык, который используют в программах Microsoft для анализа данных: в Power BI, Analysis Services и надстройке Power Pivot для Excel.
  2. С помощью DAX собирают данные из разных источников, строят на их основе модели, проводят нужные вычисления и формируют динамические отчёты с результатами.
  3. DAX-запросы схожи с формулами Excel, но, в отличие от них, проводят операции — например, вычисления или фильтрацию — не с отдельными ячейками, а с целыми столбцами.
  4. Изучить DAX можно самостоятельно — например, с помощью справочников Microsoft, книг, профессиональных форумов и сообществ. Или на онлайн-курсах — этот способ быстрее.

Источник: Skillbox Media


Закажите бесплатную консультацию эксперта

Читайте также