Post-Image

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

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

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

dev_000_screen

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

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

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

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

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

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

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

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

    Разработка содержит следующие данные:

  • Общую информацию о потерянных и найденных питомцах.

  • Географию произошедшего – по России и за границей.

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

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

  • Визуальные фильтры (стандартный функционал), а также боковая панель фильтрации;

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

  • Иконки.

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

  • Получение данных из веб-источника, и их обработка – цитата Дмитрия Власова:

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

    Исходные данные собираются в 2-х таблицах – “LostPets” и “FoundPets”.

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

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

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

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

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

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

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

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

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

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

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

    dev_000_relations

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

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

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

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

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

    С первым снегом всех!

    Ваш Смайл

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