Этот курс Capstone Project для IBM-DataScience состоит из сравнения и анализа агломераций двух крупнейших городов Испании (Мадрида и Барселоны) путем изучения мест вокруг станций метро. Цель состоит в том, чтобы найти лучшие районы в Барселоне, чтобы открыть новый тренажерный зал очень успешной спортивной фирмы из Мадрида, основываясь на сходстве районов. Анализ будет выполняться с использованием неконтролируемого машинного обучения методом кластеризации K-средних с расположением станций общественного транспорта. Различия между кластерами основаны на категориях объектов в районе станции. Результат этого исследования поможет компании тренажерного зала определить места, подходящие для следующего открытия.

1. Введение/деловая проблема

1.1 Определение проблемы

Успешная сеть спортивных клубов из Мадрида планирует открыть новый тренажерный зал в Барселоне. Тренажерные залы обычно располагаются в жилых районах, недалеко от центра города и недалеко от метро или железнодорожного вокзала. Они ищут места в Барселоне с похожими характеристиками для размещения нового тренажерного зала. В этом исследовании будут объединены станции метро и вокзалов обоих городов, принимая во внимание тип мест вокруг. Чтобы конкретизировать лучшие места, мы также проведем сравнение плотности населения в окрестностях.

2 Данные

2.1 Требования к данным

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

3 Методология

В этом исследовании я использовал репозиторий GitHub. Я помещу все данные и блокноты Jupyter, которые я использовал для этого завершающего проекта. Наиболее важные библиотеки, которые я собираюсь использовать, это folium, pandas, geopandas, matplotlib, seaborn. и sklearn.

3.1 Мадрид

Во-первых, мы можем визуализировать на карте районы Мадрида и положение спортивных залов. Я использовал библиотеку python folium для визуализации местоположения Мадрида и его положения. Станции метро отмечены синим цветом, а вокзалы — красным. Формы картограммы представляют границы окрестностей, а цветовая шкала представляет плотность населения.

Тренажерные залы находятся в трех разных местах, обозначенных красным значком. Мы можем соединить фигуры районов и координаты тренажерных залов с помощью инструмента sjoin из geopandas, чтобы увидеть плотность каждого тренажерного зала. район:

В таблице показано, что спортзалы находятся в районах с плотностью населения около 26 тыс. чел./км2. Таким образом, эта информация будет использована для выбора подходящего места для новой апертуры в Барселоне.

Чтобы сегментировать и выявить особенности площадей спортзалов, мы проанализируем все станции метро и поездов в городе Мадрид и места расположения спортзалов.

Я воспользовался API Foursquare, чтобы исследовать площадки вокруг локаций и сегментировать их. Количество площадок будет ограничено 100 площадками в радиусе 500 метров от каждой локации. Мы исследуем 320 мест в Мадриде.

В таблице показаны 10 лучших категорий, которые я нашел:

Для подготовки входных данных, необходимых для кластеризации k-средних, мы будем использовать однократное кодирование для столбца категорий мест. Затем мы сократили кадр данных до одной строки на станцию ​​с нормализацией, основанной на частоте появления каждой категории. В итоге у нас будет датафрейм со всеми станциями и в столбцах частоты каждой категории. Окончательный кадр данных содержит 299 столбцов и 202 строки, и это именно вход для k-средних. Я помещаю пример этой нормализации в таблицу:

Взвешенная кластеризация K-Means была проведена с учетом четырех кластеров. Распределение локаций по кластерам:

Локации хорошо распределены по кластерам. На рисунке ниже показана визуализация кластеров на картограмме:

Мы можем определить основные характеристики кластеров, используя нормализованное представление блочной диаграммы и посмотрев, какие места для каждого кластера являются наиболее распространенными, непосредственно в таблице:

  1. Кластер 0 (фиолетовый): это места, в основном расположенные в районах с высокой плотностью населения, которые расположены близко к центру. Наиболее распространенными категориями в этой группе являются всевозможные рестораны, супермаркеты, продуктовые магазины, спортивные залы и магазины одежды. Супермаркеты и продуктовые магазины указывают, что они могут быть жилыми районами.
  2. Кластер 1 (голубой): это места, которые в основном присутствуют в районах с высокой плотностью населения, охватывающих северо-восток города. Наиболее распространенными категориями в этой группе являются обычные рестораны, итальянские рестораны, супермаркеты, отели и спортивные залы. Эти районы представляют собой сочетание жилых и деловых мест.
  3. Кластер 2 (зеленый): они расположены в основном в пригородах. Наиболее распространенными категориями в этой группе являются бакалейные товары, рестораны быстрого питания, супермаркеты и разные магазины. Это жилые районы.
  4. Кластер 3 (красный): это места с большим количеством площадок, большинство из которых находятся в центре города. Наиболее распространенными категориями в этой группе являются всевозможные рестораны, кафе, музеи, отели, ночные клубы и тапас-бары. Типичная конфигурация объекта для туристического и центрического места.

Блочные диаграммы могут помочь быстро визуализировать основные изменения среди кластеров.

3.2 Барселона

Мы делаем тот же процесс кластеризации для Барселоны, но 4 кластера недостаточно для Барселоны. В данном случае мы считаем, что 10 кластеров являются более репрезентативными.

Распределение кластеров не такое однородное; у нас есть три кластера только с одним местоположением. Мы не собираемся брать эти кластеры для оценки; эти местоположения соответствуют станциям в пригородах с небольшим количеством мест.

Мы можем определить основные характеристики кластеров, используя нормализованное представление коробчатой ​​диаграммы и непосредственно посмотрев, какие места наиболее распространены для каждого кластера:

  1. Кластер 0 (фиолетовый): это места, которые в основном расположены на диагональной улице с западной стороны. Наиболее распространенными категориями в этой группе являются рестораны, отели, тренажерные залы, кофейни и многие рестораны. Это место больше похоже на деловые и жилые помещения.
  2. Кластер 1 (темно-синий): это места, которые в основном присутствуют в районах с высокой плотностью населения в историческом центре и некоторых жилых районах. Наиболее распространенными категориями в этой группе являются обычные рестораны, кофейни, другие рестораны, спортивные залы и супермаркеты. Эти районы представляют собой сочетание жилого и туристического места.
  3. Кластер 2 (синий): они расположены в основном в центре. Наиболее распространенными категориями в этой группе являются Гостиницы, Рестораны, Кофейни. Туристическое место в центре города.
  4. Кластер 4 (голубой): это места в жилых зонах в северных пригородах. Наиболее распространенными категориями в этой группе являются парки, площади, кафе, рестораны, супермаркеты и спортивные залы. Конфигурация объекта в жилом месте.
  5. Кластер 5 (зелено-голубой): Кластер только с тремя местоположениями. Они похожи на кластер 4, жилые районы на севере города, но в этих местах меньше площадок и меньше тренажерных залов и кофеен. (Это может быть подходящим местом для нового открытия)
  6. Кластер 7 (оранжевый): такие места находятся в центре и на юге города. Они похожи на кластер 1. Наиболее распространенными местами для этих мест являются тапас-рестораны, коктейль-бар, кофейня, всевозможные рестораны и отели.
  7. Кластер 9 (красный): места, расположенные на севере города. Наиболее популярными местами являются рестораны, кафе, супермаркеты, спортивные залы, парки и продуктовые магазины. Эти места также являются жилыми районами.

4 Результат — Обсуждение

Цель исследования — найти лучшее место рядом с остановкой общественного транспорта для нового открытия на основе сходства между локациями.

Во-первых, мы можем определить тип местоположения, в котором у фирмы есть фактические тренажерные залы в Мадриде. На карте Мадрида мы можем предположить, что спортивные залы расположены в местах, обозначенных как кластеры 0 (фиолетовые). Кластер 0 был определен как жилой район, относящийся к одной из высших категорий Супермаркеты и Продуктовые магазины.

Целевыми районами являются районы с плотностью населения от 25 до 30 человек на квадратный километр, расположенные недалеко от центра города.

Кластеры, представляющие жилые районы Барселоны с характеристиками, схожими со спортивными залами, — это кластеры 1, 4, 5 и 9. Их можно считать жилыми, а также супермаркеты и продукты в качестве основной категории.

Мы видим на карте только те кластеры и районы, которые соответствуют требованиям:

Станции, которые лучше всего подходят для этих условий, - это MUNTANER STATION, HOSPITAL DE SAN PAU, LA SAGRERA и LA PAU.

Анализ был выполнен с использованием API Foursquare. В обоих городах много ресторанов на одно место по сравнению с другими местами, я считаю, что это может усложнить анализ, и это может быть причиной того, что так сложно найти лучший номер кластера. Тем не менее, взвешенный метод K-средних дал достойную кластеризацию.

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

1 репозиторий

Репозиторий этого проекта можно найти здесь

Все данные и блокноты Jupyter, используемые в этом проекте, также включены в репозиторий.