Поделиться через


Руководство: Создание вычисляемых столбцов в Power BI Desktop

Иногда данные, которые вы анализируете, не содержат определенное поле, которое вам необходимо, чтобы получить желаемые результаты. Вычисляемые столбцы подходят для этой ситуации. Вычисляемые столбцы используют формулы анализа данных (DAX) для определения значений столбца. Это средство полезно для всего, от объединения текстовых значений из нескольких различных столбцов до вычисления числового значения из других значений. Например, предположим, что данные имеют поля "Город " и "Штат ", но требуется одно поле location , которое имеет оба поля, например "Майами, FL".

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

В этом руководстве описывается понимание и создание вычисляемых столбцов и их использование в визуализациях отчетов в Power BI Desktop.

Предпосылки

  • Это руководство предназначено для пользователей Power BI, уже знакомых с помощью Power BI Desktop для создания более сложных моделей. Вы уже должны знать, как использовать получение данных и редактор Power Query для импорта данных, работы с несколькими связанными таблицами и добавления полей на холст отчета. Если вы не знакомы с Power BI Desktop, ознакомьтесь со сведениями о начале работы с Power BI Desktop.

  • В этом туториале используется пример продаж Contoso для Power BI Desktop, тот же самый пример используется в туториале Создание собственных мер в Power BI Desktop. Эти данные о продажах от вымышленной компании Contoso, Inc. были импортированы из базы данных. Вы не сможете подключиться к источнику данных или просмотреть его в редакторе Power Query. Скачайте и извлеките файл на своем компьютере, а затем откройте его в Power BI Desktop.

В отчете о продажах вы хотите отобразить категории продуктов и подкатегории в виде отдельных значений, таких как "Мобильные телефоны - Аксессуары", "Мобильные телефоны - смартфоны и PAS" и т. д. В списке полей нет поля, которое предоставляет эти данные, но есть поле ProductCategory и поле ProductSubcategory , каждое из которых находится в собственной таблице. Вы можете создать вычисляемый столбец, объединяющий значения из этих двух столбцов. Формулы DAX могут использовать всю мощность уже существующей модели, включая связи между разными таблицами, которые уже существуют.

Снимок экрана: столбцы в списке полей.

  1. Чтобы создать новый столбец в таблице ProductSubcategory , щелкните правой кнопкой мыши или выберите многоточие ... рядом с ProductSubcategory в области "Поля " и выберите новый столбец в меню.

    Снимок экрана: новый столбец в раскрывающемся меню.

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

    Снимок экрана: строка формул.

  2. По умолчанию новый вычисляемый столбец называется Column. Если вы не переименовываете его, новые столбцы называются "Столбец 2", "Столбец 3" и т. д. Вы хотите, чтобы столбец был более идентифицируемым, поэтому, пока имя столбца уже выделено в строке формул, переименуйте его, введя ProductFullCategory, а затем введите знак равенства (=).

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

    После знака равенства введите r. В раскрывающемся списке показаны все функции DAX, начиная с буквы R. Выбор каждой функции показывает описание его эффекта. При вводе список предложений масштабируется ближе к нужной функции. Выберите СВЯЗАННЫЕ и затем нажмите Enter.

    Снимок экрана, где в строке формул выбрано

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

    Скриншот с выбором ProductCategory на панели формул для функции Related.

  4. Вам нужен столбец ProductCategory из таблицы ProductCategory. Выберите ProductCategory[ProductCategory], нажмите клавишу ВВОД, а затем введите закрывающую скобку.

    Подсказка

    Синтаксические ошибки чаще всего вызваны отсутствием или неправильным закрытием круглых скобок, хотя иногда Power BI Desktop добавляет его для вас.

  5. Вы хотите, чтобы дефисы и пробелы разделяли категории товаров и подкатегории товаров в новых значениях, поэтому после закрывающей скобки первого выражения введите пробел, амперсанд (&), двойные кавычки ("), пробел, тире (-), ещё один пробел, ещё одни двойные кавычки и ещё один амперсанд. Теперь формула должна выглядеть следующим образом:

    ProductFullCategory = RELATED(ProductCategory[ProductCategory]) & " - " &

    Подсказка

    Если вам нужно больше места, выберите вниз шеврон справа от строки формул, чтобы развернуть редактор формул. В редакторе нажмите клавиши ALT+ ВВОД , чтобы переместить строку вниз, а вкладка — переместить вещи.

  6. Введите открываемую скобку ([), а затем выберите столбец [ProductSubcategory] , чтобы завершить формулу.

    Снимок экрана категории продукта, выбранной для формулы.

    Не нужно использовать другую функцию RELATED для вызова таблицы ProductSubcategory во втором выражении, так как вы создаете вычисляемый столбец в этой таблице. Вы можете ввести [ProductSubcategory] с полным префиксом имени таблицы или без него (неквалифицированно).

  7. Выполните формулу, нажав клавишу ВВОД или выбрав флажок в строке формул. Формула проверяет, а имя столбца ProductFullCategory отображается в таблице ProductSubcategory в области "Поля ".

    Снимок экрана: готовый столбец ProductFullCategory.

    Замечание

    В Power BI Desktop вычисляемые столбцы имеют специальный значок в области полей , показывающий, что они содержат формулы. В службе Power BI (сайт Power BI) нет способа изменить формулы, поэтому вычисляемые столбцы не имеют значков.

Использование нового столбца в отчете

Теперь вы можете использовать новый столбец ProductFullCategory для просмотра SalesAmount по ProductFullCategory.

  1. Выберите или перетащите столбец ProductFullCategory из таблицы ProductSubcategory на холст отчета, чтобы создать таблицу со всеми именами ProductFullCategory .

    Снимок экрана: таблица ProductFullCategory.

  2. Выберите или перетащите поле SalesAmount из таблицы Sales в таблицу, чтобы отобразить SalesAmount для каждого ProductFullCategory.

    Снимок экрана: таблица SalesAmount by ProductFullCategory.

Создание вычисляемого столбца, использующего функцию IF

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

К счастью, в таблице "Магазины " есть столбец " Состояние" со значениями "Вкл." для активных хранилищ и "Выкл." для неактивных хранилищ, которые можно использовать для создания значений для нового столбца Active StoreName . Формула DAX может использовать логическую функцию IF для проверки состояния каждого хранилища и возврата определенного значения в зависимости от результата. Если состояние хранилища равно "Включено", формула возвращает имя хранилища. Если это значение "Выкл", формула присваивает StoreName значение "Неактивно".

  1. Создайте вычисляемый столбец в таблице "Магазины " и назовите его Active StoreName в строке формул.

  2. = После символа начните вводить IF. В списке предложений показано, что можно добавить. Выберите IF.

    Снимок экрана: IF, выбранного на панели формул.

  3. Первый аргумент функции IF — это логическая проверка, является ли Статус магазина "Включен". Введите открывающую скобку [, в которой перечислены столбцы из таблицы "Магазины " и выберите [Состояние].

    Снимок экрана: состояние, выбранное для функции IF в строке формул.

  4. Сразу после [status], введите ="On", а затем введите запятую (,), чтобы завершить аргумент. Подсказка указывает, что теперь необходимо добавить значение, которое должно быть возвращено, если результат является TRUE.

    Снимок экрана

  5. Если состояние магазина равно "Включено", необходимо отобразить имя магазина. Введите открываемую скобку ([) и выберите столбец [StoreName] , а затем введите другую запятую. Теперь в подсказке указано, что необходимо добавить значение, которое будет возвращено, если результат окажется FALSE.

    Снимок экрана: столбец StoreName, добавленный в формулу.

  6. Необходимо, чтобы значение было "Неактивным", поэтому введите " Неактивное", а затем заполните формулу, нажав клавишу ВВОД или выбрав флажок в строке формул. Формула проверяется, а имя нового столбца отображается в таблице "Магазины " в области "Поля ".

    Снимок экрана: завершенная формула и столбец Active StoreName, добавленные в область

  7. Новый столбец Active StoreName можно использовать в визуализациях так же, как и любое другое поле. Чтобы отобразить SalesAmounts by Active StoreName, выберите поле Active StoreName или перетащите его на холст отчета, а затем выберите поле SalesAmount или перетащите его в таблицу. В этой таблице активные хранилища отображаются по имени, но неактивные хранилища группируются в конце как неактивные.

    Снимок экрана: таблица SalesAmount by Active StoreName.

Что вы узнали

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

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

Обязательно добавьте в избранное справочник по выражениям анализа данных (DAX). В этом справочнике можно найти подробные сведения о синтаксисе DAX, операторах и более 200 функциях DAX.

Другие статьи, интересующие вас: