Введение:

Бангалор (также называемый Бангалор) — столица южного индийского штата Карнатака. Центр индустрии высоких технологий Индии, город хорошо известен своими парками и ночными клубами. Таким образом, в результате этого возникает серьезная проблема с населением и дорожным движением, которая с каждым годом только увеличивается из-за того, что все больше людей хотят переехать в Бангалор. Поиск хорошего места для жизни в Бангалоре быстро становится очень утомительной задачей, особенно для людей, плохо знакомых с городом.

Цель:

Основная цель этого проекта - упростить задачу поиска идеального места для переезда, чтобы люди могли насладиться тишиной и спокойствием, которые Бангалор может предложить с его обилием парков и озер, а также близостью к аутентичным южно-индийским ресторанам. чтобы получить лучший опыт Бангалора.

Получение данных

Прежде чем мы прыгнем вперед и начнем программировать, нам нужно сначала выяснить, какие данные нам понадобятся и откуда мы их получим.

Быстрый поиск в Google привел меня к Kaggle, в котором был именно тот набор данных, который нам был нужен. Набор данных состоял из значений широты и долготы почти для всех районов Бангалора. Здорово! Отсюда все будет гладко… по крайней мере, я так думал.

Кроме того, мы будем использовать данные о ресторанах и парках Южной Индии, полученные из API Foursquare, которые будут использоваться для создания наших идеальных местоположений в городе и кластеризации их на основе сходства для пользователя.

Методология

Прочитав данные Neighborhoods из набора данных Kaggle и визуализировав Neighborhoods с помощью Folium, я сразу заметил, что у нас есть Neighborhoods за пределами города, а некоторые даже в других городах. Поэтому я решил оставить только районы Бангалора и его окрестностей, а все остальные удалил.

Затем я использовал API Foursquare, чтобы исследовать районы и получить данные о местах проведения для каждого района, установив радиус 1,8 км и ограничение в 100 мест. API вернул 2170 мест для 67 районов, которые я выбрал.

Используя данные о площадках из API, я сгруппировал все районы, чтобы отобразить 20 самых популярных мест в каждом районе, чтобы лучше понять, что там более популярно.

Но мы не можем просто напрямую использовать данные как есть. Большинство алгоритмов ML принимают только числовые данные. Поэтому, чтобы преодолеть это, мы преобразуем категориальные данные в переменные с горячим кодированием, а затем сгруппируем по каждому соседству со средним значением для каждой категории мест проведения.

Теперь пришло время использовать алгоритм неконтролируемого машинного обученияK-MEANS для кластеризации районов на основе схожести их категорий мест проведения.

После некоторых проб и ошибок я решил остановиться на значении k, равном 5, поскольку оно дало оптимальный результат.

Результаты

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

Визуализация меток кластера с помощью карты Folium

Из приведенных выше результатов мы можем заметить, что большинство Окрестностей попадают в 0-й кластер (красный маркер) или 3-й кластер (зеленый маркер). Поскольку моей целью было найти районы, в которых было больше парков и южно-индийских ресторанов, я определил эти места среди 20 лучших мест каждого района.

Наблюдая за районами с парками и южно-индийскими ресторанами, я обнаружил, что большинство из них принадлежат к 3-му кластеру (зеленый маркер), и после дополнительного анализа я определил 10 районов в этом кластере, которые, как я считаю, были бы нашими идеальными местами.

Ниже приведены 10 идеальных районов в произвольном порядке:

  1. Банасвади
  2. Гиринагар
  3. Джаянагар
  4. Катригуппе
  5. Конанкунте
  6. Лингараджапурам
  7. Матикере
  8. Наяндахалли
  9. Садашиванагар
  10. Елакенахалли

Обсуждения

Бангалор — большой и густонаселенный город, поэтому группировать районы по местам их проведения — сложная задача, особенно когда все районы очень похожи друг на друга. Поэтому, чтобы получить удовлетворительный результат, я установил радиус местоположения 1,8 км при вызове API для мест проведения.

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

Вывод

10 перечисленных районов идеальны в том смысле, что они очень мирные и очень бангалорские по своей природе.

Я надеюсь, что этот проект окажется полезным для всех, кто хочет переехать в Бангалор или хочет построить дом в городе. Компании, занимающиеся недвижимостью, также могут извлечь выгоду из такого анализа и могут принимать более обоснованные решения для улучшения своего бизнеса.