| OnStudy — самый продуманный курс по Excel и Google Sheets | |
| Курс профессиональной Power BI аналитики |
Файлы к уроку:
Ссылки:
Описание
Как искать ключевые слова и присваивать категорию в Power Query.
Например, у вас есть список товаров. Если в строке встречается слово планшет или смартфон, то нужно в соседнем столбце написать название категории «Смартфоны и планшеты». Категорий может быть сколь угодно много.

Решение
Для решения нам сначала понадобится создать вспомогательную таблицу ключ-категория:

Далее мы объединим каждое значение из таблицы источника с каждым значением из этой вспомогательной таблицы:

Примененные функции
- Table.AddColumn
- Table.AddIndexColumn
- Table.ExpandTableColumn
- Text.Contains
- Text.Lower
- Table.SelectRows
- Table.SelectColumns
Код
let
source = Excel.CurrentWorkbook(){[Name = "Задача"]}[Content],
table_add_col = Table.AddColumn(
source,
"Пользовательская",
each #"key-category"
),
table_add_idx = Table.AddIndexColumn(table_add_col, "Индекс", 0, 1),
col_expand = Table.ExpandTableColumn(
table_add_idx,
"Пользовательская",
{"Поиск", "Категория"},
{"Поиск", "Категория"}
),
table_add_col_2 = Table.AddColumn(
col_expand,
"Пользовательская",
each Text.Contains(Text.Lower([Товар]), [Поиск])
),
rows_select = Table.SelectRows(
table_add_col_2,
each ([Пользовательская] = true)
),
cols_select = Table.SelectColumns(rows_select, {"Товар", "Категория"})
in
cols_select
Этот урок входит в Базовый курс Power Query
| Номер урока | Урок | Описание |
|---|---|---|
| 1 | Зачем нужен Power Query. Обзор возможностей | Этот урок сам по себе является мини-курсом. Здесь вы узнаете для каких видов операций с данными создан Power Query. |
| 2 | Подключение Excel | Подключаемся к файлам Excel. Импортируем данные из таблиц, именных диапазонов, динамических именных диапазонов. |
| 3 | Подключение CSV/TXT, таблиц, диапазонов | Подключаемся к к файлам CSV/TXT, Excel. |
| 4 | Объединить таблицы по вертикали | Учимся объединять две таблицы по вертикали — combine. |
| 5 | Объединить по вертикали все таблицы одной книги друг за другом | Как объединить по вертикали все таблицы одной книги, находящиеся на разных листах Excel. |
| 6 | Объединить по вертикали все файлы в папке | Объединяем по вертикали таблицы, которые находятся в разных файлах в одной папке. |
| 7 | Объединение таблиц по горизонтали | Учимся объединять таблицы по горизонтали — JOIN, merge. |
| 8 | Объединить таблицы с агрегированием | Объединить таблицы по горизонтали и сразу выполнить группировку с агрегированием — JOIN + GROUP BY. |
| 9 | Анпивот (Unpivot) | Изучаем операцию Анпивот — из сводной таблицы делаем таблицу с данными. |
| 10 | Многоуровневый анпивот (Анпивот с подкатегориями) | Более сложный вариант Анпивота — в строках находится несколько измерений. |
| 11 | Скученные данные | Данные собраны в одном столбце, нужно правильно его разбить на несколько. |
| 12 | Скученные данные 2 | Разбираем еще один пример скученных данных. |
| 13 | Ссылка на другую строку | Как сослаться на другую строку. |
| 14 | Ссылка на другую строку 2 | Как сослаться на другую строку, используя объединение по горизонтали. |
| 15 | Виды объединения таблиц по горизонтали | Изучаем виды объединения таблиц по горизонтали — LEFT JOIN, FULL JOIN, INNER JOIN, CROSS JOIN. |
| 16 | Виды объединения таблиц по горизонтали 2 | Изучаем анти-соединение и соединение таблицы с ней же самой — ANTI JOIN, SELF JOIN. |
| 17 | Группировка | Изучаем операцию группировки с агрегированием — GROUP BY. |
| 18 | Консолидация множества таблиц пользовательской функцией | Объединяем по вертикали множество таблиц с предварительной обработкой при помощи пользовательской функции. |
| 19 | Деление на справочник и факт | Разделим один датасет на два датасета: справочник и факт. |
| 20 | Создание параметра | Мы можем ввести значение в какую-то ячейку Excel, а потом передать это значение в формулу Power Query. |
| 21 | Таблица параметров | Создадим целую таблицу параметров и будем их использовать в запросах Power Query. |
| 22 | Объединение таблиц по вертикали, когда не совпадают заголовки столбцов | Как объединить две таблицы по вертикали, если названия столбцов не совпадают. |
| 23 | Поиск ключевых слов | Научимся искать ключевые слова в текстовом поле. |
| 24 | Поиск ключевых слов 2 | Будем искать ключевые поля в текстовом поле и присваивать этому значению какую-то категорию. |