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


Руководство. Создание вычисляемых столбцов в 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. Выбор каждой функции показывает описание его эффекта. При вводе список предложений масштабируется ближе к нужной функции. Выберите "СВЯЗАННЫЕ" и нажмите клавишу ВВОД.

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

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

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

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

    Совет

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

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

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

    Совет

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

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

    Снимок экрана: ProductCategory, выбранный для формулы.

    Не нужно использовать другую функцию 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 для проверки состояния каждого хранилища и возврата определенного значения в зависимости от результата. Если состояние хранилища равно "Включено", формула вернет имя хранилища. Если это значение "Выкл.", формула назначит active 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.

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