Post-Image

Мониторинг питомцев

Рвав-рвав, с вами социально-ответственный собака Смайл!

В связи с прошедшим Днем рождения, а также в рамках постоянной работы над собой, мы рады представить вам свою очередную разработку – отчет c кодовым названием “Мониторинг питомцев”.

Отчет построен по данным российской базы чипированных животных, а данные, представленные в отчете – общего характера.

Собака Смайл выражает благодарность коллеге хозяина Дмитрию Власову за помощь в создании процедуры парсинга исходных данных.

Описание разработки, за исключением процедуры парсинга, представлено ниже.

dev_000_screen

Отчет реализован при помощи DAX и Power Query, при этом:

  • Источником данных для отчета является “Web” (“Интернет”), то есть web-станицы, соединенные в определенной последовательности, и представленные при помощи функций на уровне Power Query в табличном виде.

  • Географические данные, используемые в отчете, представляют собой “очищенные” позиции, то есть эти данные отличаются от оригинала. Очистка данных производилась большей частью вручную, на уровне DAX, поскольку у человеков просто неисчерпаемая фантазия.

    Рвав-рвав, отступление из серии “Накипело”. Собака Смайл узнал очень много в процессе обработки данных, оказывается, столица нашего государства может писаться следующим образом:

    “MOSKOV” – тут слов нет, мало того, что английский, так еще и с 2-мя (!) ошибками;

    “ГРАД МОСКОВСКИЙ” – куда уж нам без пафоса, так и хочется сказать: “Человек, у тебя, вообще-то, друг потерялся…”;

    “ТВЕРСКАЯ УЛИЦА” – таки-да, товарищи, это тоже “МОСКВА” (Смайл понял из контекста), но мы же с вами и так все в курсе, где это… И ничего, что такая же улица, как минимум, в Петербурге есть (рядом с Таврическим садом, если что).

  • Все показатели расчитаны при помощи мер.

    Разработка содержит 2 листа:

  • Лист “Общие данные” – общая информация о потерянных и найденных питомцах по России и странам мира.

  • Лист “ГЕО - Мир” – детальная информация по странам мира, за исключением России, с выделением ТОП-5 в рейтинге.

  • Лист “ГЕО - регионы России” – детальная информация по регионам России, с выделением ТОП-5 в рейтинге.

  • Лист “Породы” – детальная информация по конкретным породам питомцев, с выделением ТОП-5 в рейтинге.

  • Лист “Подробности” – персонифицированная информация о конкретном питомце, с указанием номера чипа / клейма для облегчения его идентификации.

    Используемые элементы:

  • Визуальные фильтры, реализованные при помощи элемента визуализации “Slicer” (“Срез”), а также боковой панели фильтрации.

  • В качестве элементов визуализации используются: “Card” (“Карточка”), “Treemap” (“Диаграмма дерева”), “Donut chart” (“Кольцевой график”), “Map” (“Карта”), “Multi-row card” (“Многострочная карточка”), “Ribbon chart” (“Диаграмма ленты”).

  • Иконки.

    Процесс разработки:

  • Получение данных из веб-источника, и их обработка.

    Цитата разработчика:

    ”…Подготовка данных для отчета осуществляется с помощью Power Query. На входе получаем URL к узловой странице с потерянными или найденными животными. Узловые страницы ведут на по страничное представление списков потерянных или найденных животных в формате “html”. На каждой странице содержится одна или несколько таблиц с карточкой животного. С помощью преобразования Power Query и написанного ряда функций Power Query данные загружаются в модель.

    Ключеые функции:

    – Web.Contents – для загрузки данных;

    –List.Accumulate – для прохождения и обработки в “цикле” каждой страницы и поиска последней заполненной страницы.”

    Исходные данные собираются в 2-х таблицах – “Потерянные питомцы” и “Найденные питомцы”.

  • Создана таблица “Субъекты России” – справочник федеральных округов, субъектов и административных центров России.

  • Создана таблица “Время года” – справочник по временам года, имеющий ссылку URL на соответствующую иконку.

  • Создана таблица “Статус питомца” – справочник по состоянию питомца, имеющий ссылку URL на соответствующую иконку.

  • Создана таблица “Меры” – техническая таблица, созданная для удобства, складываем туда меры (по старинке), хоть теперь можно их группировать при помощи каталогов.

  • Создана таблица “Вид питомца” – справочник по градации питомцев, имеющий ссылку URL на соответствующую иконку.

  • Создана таблица “Пол питомца” – справочник, содержащий пол питомца, также имеющий ссылку URL на соответствующую иконку.

    На этом работы с Power Query завершены.

  • Создана таблица “Календарь” – базовая таблица, определяющая набор дат для расчета, включая сезоны.

  • Создана таблица “Объявления” – таблица, содержащая консолидированные данные по питомцам, с текущей меткой их статуса.

  • Создана таблица “Геопозиция” – справочник, содержащий очищенные географические данные, о которых упоминалось выше.

  • Следующим этапом является простановка связей в получившейся модели данных. Схема связей представлена ниже:

    dev_000_relations

  • Затем при помощи DAX начинаем формировать нужные аналитические разрезы, например, производим расчет количества случаев потери и нахождения питомцев.

  • Последний шаг разработки – это дизайн, отчет построен на использовании стандартных элементов.

    Особенности разработки:

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

  • Для размещения иконок непосредственно в элементе “Slicer” (“Срез”), изображения должны быть доступны по URL. В данном случае, они размещены в структуре сайта.

    Рвав-рвав, всем хорошей погоды!

    Ваш Смайл

    ДЛЯ ЛЮБИТЕЛЕЙ ПОНАЖИМАТЬ НА КНОПОЧКИ