Использование DAX в Power BI: Полное руководство для начинающих

Использование DAX в Power BI: Полное руководство для начинающих

DAX (Data Analysis Expressions) — это язык формул и выражений, предназначенный для работы с данными и создания аналитических вычислений в Power BI, а также в других продуктах Microsoft, таких как Power Pivot и Analysis Services. Хотя DAX по структуре напоминает формулы Excel, он обладает дополнительными функциями, ориентированными на аналитику и обработку данных.

Базовый синтаксис DAX

В основе DAX лежит простой синтаксис:

<measure> = <DAX function> ([column], <optional filters>)

Где:

  • <measure> — имя создаваемого измерения.
  • <DAX function> — используемая функция DAX, например, SUM, MIN или MAX.
  • [column] — столбец данных, к которому применяется функция.
  • <optional filters> — дополнительные фильтры для уточнения вычисления.

Пример:

Total Sales = SUM([Sales])

Основные функции DAX

Агрегатные функции:

DAX предоставляет широкий спектр агрегатных функций для обработки данных:

  • SUM: возвращает сумму значений.
  • AVERAGE: рассчитывает среднее значение.
  • MIN и MAX: возвращают минимальное и максимальное значение соответственно.
  • COUNT: подсчитывает количество строк.
  • DISTINCTCOUNT: определяет количество уникальных значений.

Примеры:

Total Sales = SUM([Sales])
Average Price = AVERAGE([Price])

Функции фильтрации:

Фильтры позволяют уточнять и модифицировать область действия вычисления:

Sales in 2020 = SUM([Sales], [Year] = 2020)
Sales in 2020 for A Product = SUM([Sales], [Year] = 2020 && [Product] = "A")

Временные и текстовые функции:

С их помощью можно преобразовывать и работать со значениями даты и текста.

Year of Sale = YEAR([Sale Date])
Capitalized Product Name = UPPER([Product Name])

Расчеты «если/иначе» с SWITCH:

Функция SWITCH используется для создания условных выражений:

Volume Bonus =
SWITCH(
TRUE(),
[Units Sold] < 100, 0,
[Units Sold] < 1000, 5,
10
)

Работа с несколькими таблицами:

DAX позволяет объединять и использовать данные из разных таблиц:

Regional Sales =
SUMX(
Sales,
CALCULATE(
SUM(Products[Price]*Sales[Quantity]),
Sales[Region] = Products[Region]
)
)

Заключение

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

Полный учебник по DAX от Microsoft.