Время прочтения: 3 мин.
Недавно я столкнулась с такой задачей: мне потребовалось рассчитать определенные показатели в разрезе профильных отделов, но выгрузка из ПО не содержала такой информации. Тогда из столбца данных «кратное описание» я выбрала ключевые слова и, распределив их по категориям, установила связь между данными и принадлежностью к одному из отделов компании.
Исходные данные:
Способ 1.
Используя возможности интернет-сервиса WordArt.com, я составила Облако ключевых слов (для создания Облака использовались текстовки из поля «Краткое описание» исходных данных за предыдущий год):
Для установления связи между ключевыми словами и отделом, был использован DAX Power BI (функции MID и IF):
Справочно: MID () — выводит часть текста заданной длинны с учетом первоначальной позиции. MID («Текст»; Позиция; Количество Символов), где:
* Текст – исследуемый текст или столбец с текстовыми данными
* Позиция – номер позиции символа, с которого нужно выводить текст
* Количество Символов – количество символов, которые нужно вывести
После стандартного подключения через Power BI к базе данных, я создала новый столбец с названием «Отдел» (через вкладку «Моделирование») с условием:
Отдел = IF(MID([Краткое описание];1;12)=“Документация”;”Отдел 3”;
IF(MID([Краткое описание];1;14)=“Застрахованный”;”Отдел 2”;
IF(MID([Краткое описание];1;10)=“Управление”;”Отдел 1”.
Формула читается следующим образом: если в поле «Краткое описание» с 1 по 12 символ указано «Документация», то по данной строке в столбце «Отдел» проставляется признак принадлежности к Отделу 3 (условное название) и т.д.
Данный метод может быть применим при определенных условиях:
- надо быть уверенным, что в словах из поля «Краткое описание» АС не допущены неточности, например, вместо «Документация» занесено «Документаци» (недописана буква), иначе вышеуказанная формула не сработает, и распределение не произойдет;
- если количество текстовых условий, которые необходимо прописать в формуле незначительное, иначе формула получается слишком «тяжелая».
Способ 2 (в моем случае оказался более подходящим):
Я перенесла облако слов в память программы таким образом, что при нахождении в поле «Краткое описание» (в независимости от символьной позиции) слова или словосочетания из облака, производилось бы автоматическое присвоение признака соответствующего отдела.
Для решения задачи был создан условный столбец в Power BI, который вычисляется исходя их данных других столбцов или значений:
При работе с условным столбцом я выбрала имя поля, по которому будет задано условие, а именно «Краткое описание», указала непосредственно само условие, выбрав тип оператора – «Содержит», перенесла данные из Облака слов в поле «Значение» и прописала результат – проставление в столбце «Отдел» признака соответствующего отдела в зависимости от ключевого слова из облака слов.
В результате, в таблицу добавился столбец с информацией о принадлежности данных к соответствующему отделу, что позволило работать с информацией в разрезе отделов компании.
Таблица исходных данных приняла следующий вид: