Урок 4. Извлечение данных

Четвертый урок из курса Максима Уварова «Power Bi для интернет-маркетинга» — извлечение данных из папки с файлами (xls, csv)

Видеолекции

Раздатка: папка pbi4, 13 Мб

Извлечение данных из нескольких XLSX файлов в папке. В видеороликах Максим забавно шепелявит произнося слово ошибка. Это все благодаря программе шумоподавления krisp.
Извлечение данных из нескольких XLS файлов — резюме
Объединение данных из CSV файлов в папке
Работа с различными форматами дат и десятичных дробей
Работа с ошибками в Power Query

Алгоритм поиска ошибок в запросах Power Query:

  1. Добавляете шаг «Оставить ошибки»
  2. Таскаете его между другими шагами, пока не найдете шаг, на котором ошибки появились
  3. Исправляете ошибку
  4. Перетаскиваете шаг «Оставить ошибки» в самый конец запроса. Убеждаетесь, что ошибок нет.
  5. Удаляете шаг «Оставить ошибки»
Приемы работы с массивными запросами

При добавлении нового шага обработки данных, Power Query обновляет все запросы связанные с текущим запросом полностью. На этапе настройки и отладки массивных запросов это может стать проблемой: округлили числа в столбце до первого знака запятой (например), и ждете 3 минуты, пока все шаги обработки данных выполнятся.

В этом видео я рассказываю как используя функцию Keep Top Rows в начале массивного запроса можно ограничить количество строк — и ускорить обработку на момент отладки запроса, а когда запрос будет готов — чтобы удалить этот ограничивающий шаг.

Домашнее задание

Материалы: папка NFDPBI — v20190728

Создайте новую BI-систему

Распакуйте файлы из архива к домашнему заданию

Скопируйте запрос «CampaignNames» из вашей pbix к 3-ему уроку и вставьте в текущий PBIX файл. Короткое видео как копировать запросы [здесь](https://www.facebook.com/maximuvarov.ru/videos/608365746195970/).

Выключите загрузку запроса «CampaignNames» в модель данных.

Объедините файлы из папки XLS в единый запрос «StatRegionsXls»

Присоедините названия рекламных кампаний из запроса «CampaignNames» к данным запроса «StatRegionsXls».

Приведите все типы данных у столбцов в запросе «StatRegionsXls» в порядок. В случае если понадобится в отдельных столбцах замените ошибки на _null_ при помощи функции «Replace errors»

Создайте запрос «StatRegionsXlsErrorsCheck», который будет ссылаться на запрос «StatRegionsXls», и в котором будет использована функция «Keep Errors». Этот запрос должен быть пустой. Если он не пустой, то в запросе «StatRegionsXls» необходимо избавиться от ошибок и добиться того, чтобы запрос «StatRegionsXlsErrorsCheck» содержал 0 строчек.

В названии рекламных кампаний есть сегменты Network и Region. В кампаниях с сегментом «Network» «Sea» показы должны быть только на поиске, с сегментом «Net» — только в партнерской сети. В кампаниях с сегментом «Region» «Msk_mo» должны быть показы только в Москве и Московской области, «Spb» — только в Питере и Ленинградской области, в «all» — во всей РФ, кроме Москвы, Московской области, Питера и Ленинградской области.

Имея это в памяти, выполните следующие задания.

Создайте запрос «ErrorsNetworkInSeaCampaigns», который будет ссылаться на запрос «StatRegionsXls» — в котором должны быть только столбцы с уникальными id рекламных кампаний, их полными названиями, значениями столбца из запроса «StatRegionsXls» «Тип площадки» и Суммарное значение по полю «Показы». В запросе должны быть данные по рекламным кампаниям с сегментом «Sea» которые имеют показы в партнерской сети.

Создайте запрос «ErrorsSearchInNetCampaigns», который будет ссылаться на запрос «StatRegionsXls» — в котором должны быть только столбцы с уникальными id рекламных кампаний, их полными названиями, значениями столбца из запроса «StatRegionsXls» «Тип площадки» и Суммарное значение по полю «Показы». В запросе должны быть данные по рекламным кампаниям с сегментом «Net» которые имеют показы на поиске.

Создайте запросы «ErrorsRegionMsk_mo», «ErrorsRegionSpb», «ErrorsRegionAll» , которые будут ссылаться на запрос «StatRegionsXls», в которых найдите рекламные кампании с ошибочным таргетингом. В запросе «ErrorsRegionMsk_mo» должны быть кампании, которые имеют показы в регионах кроме Москвы и Московской области, в запросе «ErrorsRegionSpb» должны быть кампании, которые имеют показы в регионах кроме Санкт-Петербурга и Ленинградской области, в запросе «ErrorsRegionAll» должны быть кампании с показами в Москве, Московской области, Санкт-Петербурге и Ленинградской областях. В таблицах должны быть только столбцы с уникальными id рекламных кампаний с неправильным таргетингом и их полными названиями.

Желательно сделать это алгоритмически а не вручную выбирая ошибочные регионы. Но если алгоритмически не получается — делайте вручную. Этот пункт сложный. Как делать — думайте сами. Если не сделаете — не страшно. Если сделаете — опишите в комментариях к сданной работе, какой алгоритм вы выдумали.

Создайте визуализации «таблица» на каждый из запросов «ErrorsNetworkInSeaCampaigns», «ErrorsSearchInNetCampaigns», «ErrorsRegionMsk*mo», «ErrorsRegionSpb», «ErrorsRegionAll» и выведите там все поля из таблиц. Обратите внимание, что эти визуализации могут быть пустыми, т. к. Не везде есть ошибки.

В Dax, в таблице «StatRegionsXls» создайте меры «средняя позиция показов взвешенная» — взвешенной на показы, и «средняя позиция кликов взвешенная» взвешенная на клики.

Отформатируйте меры «*Средняя позиция показов взвешенная» и «*Средняя позиция кликов взвешенная» как десятичные числа с округлением до второго знака после запятой.

Создайте визуализацию «Таблица» в которой будут столбцы «Region» (из названия рекламной кампании), «Сумма кликов», «Сумма показов», «*Средняя позиция показов взвешенная» и «_Средняя позиция кликов взвешенная»

Эталонное выполнение

Видео выполнения домашнего задания

Файл с выполненным заданием

Шпаргалка курса и ментальная карта, ПДФ, 88 страниц, 13 Мб

Отправить
Поделиться
Твитнуть
Запинить

Поддержать автора курса рублями

Если курс оказался полезным, можно задонатить автору курса — Максиму Уварову.

Все перечисленные средства приходят Максиму Уварову.

❤️ Поддержать донатом Максима Уварова

Считаю метрики, делаю сквозную аналитику и когортный анализ, составляю интерактивные дешборды, моделирую юнит-экономику


Обратиться с задачей