Обычно люди переезжают из одного города в другой по многим причинам, таким как возможность трудоустройства или по семейным обстоятельствам, и часто обнаруживают, что у них практически нет выбора при выборе места жительства. Им приходится полагаться на какого-то местного человека или посредника, но нет уверенности в том, что они найдут то, что хотят. Что если мы сможем использовать алгоритмы науки о данных на общедоступных данных и API Foursquare Places, чтобы получить то, что мы хотим? или, по крайней мере, список похожих районов, в которые мы могли бы подумать о переезде? Давайте разберемся .
Предположим, человек ищет переезд из Манхэттена, Нью-Йорк, в Торонто. Мы должны найти достойное внимания место. Мы собираемся сравнить районы Нью-Йорка с районами Торонто, используя Foursquare Places Api.
Источники данных
Всего в районе Нью-Йорка 5 районов и 306 районов.
Этот набор данных существует бесплатно в Интернете. Ссылка на набор данных: https://geo.nyu.edu/catalog/nyu_2451_34572
Для города Торонто мы собираемся извлечь информацию о его окрестностях со страницы википедии: https://en.wikipedia.org/wiki/List_of_postal_codes_of_Canada:_M
Данные о географических координатах обоих городов будут использоваться в качестве входных данных для API Foursquare, который будет использоваться для предоставления информации о местах проведения для каждого района. Мы будем использовать API Foursquare для изучения районов в обоих городах.
Анализ данных
Данные, упомянутые в предыдущем разделе, используются для извлечения информации о районе каждого города. Данные города Нью-Йорка доступны в формате Json. Данные обрабатываются в кадре данных pandas, чтобы получить все районы Нью-Йорка:
Окрестности города Торонто:
Затем обрабатываются данные о районе обоих городов, и API-интерфейс Foursquare Places используется для получения 100 лучших мест, расположенных в каждом районе. Применяется одно горячее кодирование, а затем данные группируются по соседству, чтобы подготовить кадр данных для сравнения.
Уменьшение размерности выполняется в объединенном фрейме данных окрестностей обоих городов с использованием анализа основных компонентов в фрейме данных, чтобы уменьшить количество измерений. мы можем уменьшить количество признаков, сохранив при этом ту же дисперсию.
Затем используется метод оценки силуэта, чтобы найти лучшее k или лучшее оптимальное число для выполнения алгоритма кластеризации K-средних. Вот результат:
Используя описанный выше метод, мы пришли к выводу, что наилучшее значение K равно 3 для выполнения алгоритмов kMeans на объединенном кадре данных. Следовательно, мы выполнили алгоритмы KMeans для классификации всех районов обоих городов в три кластера.
Результаты
После выполнения функции KMeans в обработанном кадре данных районы обоих городов назначаются соответствующим группам кластеров. Вот результаты, откалиброванные на карте:
Окрестности Нью-Йорка:
Окрестности Торонто:
Заключение
Используя анализ соседства каждого города, у нас есть ответы на тот самый вопрос, с которого мы начали. Человек, который живет на Манхэттене и любит свой район, хочет переехать в Торонто, теперь имеет краткий список возможных населенных пунктов, в которые он может переехать и получать от этого удовольствие. Теперь у него есть выбор.
код : нажмите здесь
отчет: нажмите здесь