Задание #1
Есть «сырые» данные о покупках авиабилетов, которые лежат в `data.csv`. Описаны они полями:
`booking_id` - ID бронирования
`booking_month` - месяц покупки билета
`passengers` - количество пассажиров в бронировании
`price` - стоимость покупки билета. Причём если пассажиров несколько, то это поле учитывает полную стоимость, а не на 1 пассажира
`flights_info` - список из всех рейсов в этом билете.
Считаем, что это все рейсы без обратного билета, но по пути могут быть пересадки. Элемент списка - конкретный перелёт.
Список:
[ { «origin»: «SVO», «destination»: «MCT», «airline»: «WY», «baggage»: «With baggage» }, { «origin»: «MCT», «destination»: «HKT», «airline»: «WY», «baggage»: «With baggage» } ]
Нужно эти данные привести в такой вид, чтобы на каждый рейс внутри билета была своя отдельная строка. То есть в примере выше этот один билет должен породить 2 строки с рейсом `SVO->MCT` и `MCT->HKT`
При этом таблица должна иметь столбцы:
`booking_id` - ID бронирования
`booking_month` - месяц покупки билета
`itinerary` - маршрут, должен иметь вид `{start airport}-{change airport 1}-...-{change airport N}-{finish airport}`. Для примера выше это будет строка `SVO-MCT-HKT`
`flights_count` - количество рейсов в маршруте (1, если рейс прямой, и больше 1, если есть хотя бы одна пересадка)
`flight_id` - ID рейса (можно сгенерировать как хэш функция `md5` от `booking_id` + дополнительный символ (например, можно использовать `flight_index`, описанный ниже))
`flight_index` - номер рейса в маршруте, начиная с 0. То есть для примера выше рейс `SVO->MCT` имеет индекс `0`, а `MCT->HKT` имеет индекс 1
`origin` - код аэропорта вылета рейса
`destination` - код аэропорта прилета рейса
`airline` - код авиакомпании, выполняющей рейс
`baggage` - информация о том, является ли тариф билета с багажом или без багажа
`passengers` - количество пассажиров в билете
`price` - цена билета (полная)
Можно какие-то столбцы добавить или изменить логику текущих, если есть идеи, как можно сделать данные лучше
Задание #2
По результатам предыдущего задания из сырых данных получен более удобный для аналитики датасет, который можно использовать для исследований данных и визуализаций в дашбордах.
Соберите визуализации либо в ноутбуке, либо дашбордом в любом BI-инструменте со ссылкой на public-версию отчета (например, через Tableau Public и т.д.).
Московский узел Из Москвы с Питер `LED` можно улететь разными способами
Из Шереметьево `SVO`
Из Внуково `VKO`
Из Домодедово `DME`
Нужно исследовать, как устроен пассажиропоток
Как он распределен между этими московскими аэропортами?
Какая динамика в году по пассажиропотоку? Если есть какие-то изменения в трафике, то чем их можно объяснить?
Конкуренция есть не только у аэропортов, но и у авиакомпаний. Как распределить трафик между ними для каждого аэропорта?
Цены какой авиакомпании являются наиболее выгодными? Какой самый дешёвый способ улететь на самолёте из Москвы в Питер?
Какая авиакомпания зарабатывает больше всех (в сумме и в среднем на одном пассажире)? Можно считать, что выручка авиакомпании - это сумма цен билетов