01 / тестовое задание

Technesis:
тестовое задание для аналитика данных

Реальное тестовое с собеседования на Middle Data Analyst: исходный текст задания, как решать и частые ошибки.

02 / оригинальный текст

Текст тестового задания

Исходный текст задания без редактуры — так, как его прислали кандидату.

Данные к заданиюОткрыть данные →

1. Цель - Вам необходимо обработать сырые данные поступившие от парсера.

2. Описание

В файле hotels_parsing_result.xlsx две вкладки platform1, platform2. Это данные о гостиницах от двух разных платформ в одном регионе. Ссылка на файл

2.1 Поля id - Идентификатор в БД create_time - Дата создания title - Название hotel_type_original - Тип гостиницы city - Город address - Адрес rating - Рейтинг rating_5 - Рейтинг по 5-ти бальной шкале review_count - Количество отзывов star_rating - Звездность rooms_count Количество номеров contact_social - Контакты соц. сетей description - Описание email - строкой, несколько значений через запятую phone - телефон строкой, несколько значений через запятую website - сайты строкой, несколько значений через запятую uid - Уникальный идентификатор гостиницы на платформе, не может быть разным у одной гостиницы, и не может повторяться у разных гостиниц, но в рамках одной платформы parsing_time - Время сбора lat - Широта lon - Долгота

2.2 Состав данных

Записи могут повторятся, и самые актуальные данные идут в конце

Если какое-то поле по конкретной гостинице пустое в последней записи, но встречалось ранее, то необходимо его взять из более ранних записей

Поля телефона, email, сайтов могу содержать лишние символы, несколько записей и прочее

Формат записи названия, адреса, типа гостиницы отличается в разных платформах

3. Требования

1. Результат должен быть представлен Jupyter notebook

2. Результат должен воспроизводится автоматически и нуля при повторном запуске, ручные правки должны быть учтены в коде

3. Комментарии приветствуются

Задание #1

1. Собрать от каждой платформы финальный список гостиниц, в котором по каждой гостинице внутри платформы будет только одна запись с самыми актуальными и полными данными

2. Почистить данные

3. Поля телефона, email, сайтов распарсить и сохранить как списки в одинаковом формате ( address@domen.org, 79234553322, domen.ru)

4. Вывести топ 10 по каждой платформе, по параметрам:

a. больше всего телефонов

b. больше всего отзывов

5. Вывести квадрат координат размером 1км на 1км, где больше всего гостиниц

6. Задача со *, объединить данные от двух платформ, по критерию который вы придумаете

a. Вывести все гостиницы, которые есть в платформе 1 и нет в платформе 2

b. Вывести топ 10 гостиниц которые есть в обоих платформах, по суммарному количеству отзывов

03 / что проверяют

Что проверяет это задание

01

Python

Обработка данных и расчёты: pandas, скрипты, автоматизация.

02

Аналитическое мышление

Как разложить задачу, выбрать подход и обосновать решение.

03

Работа с данными

Аккуратная выборка, фильтрация и проверка ограничений задачи.

04 / как решать

Как подойти к решению

  1. 1

    Разберите условие: что именно просят посчитать и в каких разрезах.

  2. 2

    Сверьтесь с данными: какие таблицы есть, период и нужные фильтры.

  3. 3

    Решайте по шагам и фиксируйте промежуточные результаты и допущения.

  4. 4

    Доведите до финальных чисел и коротких выводов или рекомендаций.

05 / частые ошибки

Частые ошибки

  • Неверный период, разрез или единицы измерения.
  • Не учтены фильтры и сегменты из условия.
  • Решение без промежуточных шагов — только финальная цифра.
  • Нет выводов и рекомендаций по результату.
06 / хороший ответ

Каким должен быть сильный ответ

Хороший ответ — это не просто финальные числа или код. Работодатель должен увидеть, как вы думаете, как проверяете ограничения задачи и как оформляете результат.

  • короткое описание логики решения;
  • промежуточные таблицы, запросы и фильтры;
  • финальные значения по каждому пункту задания;
  • понятные выводы и рекомендации.
07 / похожие задания

Похожие задания

08 / разборы в telegram

Хочешь больше таких разборов?

В Telegram-канале разбираю тестовые с собеседований, метрики и типичные ошибки кандидатов.

Подписаться в Telegram →
09 / следующий шаг

Разбираешь тестовые, но не уверен в решении?

На интенсиве разбираем реальные кейсы, A/B-секции, метрики, SQL, Python и типовые ошибки кандидатов.