Советы по науке о данных

Погрузитесь в FoursquareAPI в поисках геоданных

Создайте набор данных, содержащий не только местоположения и координаты

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

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

Итак, приступим к созданию набора данных.

1. Категории площадок

Прежде чем делать какие-либо запросы на новую информацию, мы хотим решить, какая информация нам нужна. Мы хотим собрать информацию обо всех кафе и ресторанах по соседству. Первый шаг — получить все типы мест, которые нам нужны. Для этого воспользуемся конечной точкой «категории» API Foursquare и отфильтруем результат.

Применим простой фильтр и получим только кафе и рестораны:

Теперь мы готовы найти несколько реальных площадок.

2. Поиск

Foursquare предоставляет нам «поиск» конечной точки, который возвращает все места с указанными координатами местоположения. Также может потребоваться радиус поиска и список категорий для применения.

Я буду работать с геотегом родного города и искать кафе и рестораны в его центре. Наш запрос вернет много информации, поэтому оставим только важное для нас: название заведения, его id, локацию и основную категорию.

Foursquare также предоставляет конечные точки «исследование» и «популярные», которые предоставляют список мест с самым высоким рейтингом и самых популярных. Эти запросы очень полезны, но мы их опустим, когда будем работать с полным набором данных.

Теперь у нас есть база нашего набора данных. Следующим шагом будет получение более подробной информации.

3. Детали

Поскольку у нас есть полный список интересующих нас площадок, пришло время получить о них больше информации. Для этой работы есть несколько API. Мы начнем с одного, который даст больше информации в ответ — конечной точки «подробности».

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

На данный момент у нас есть немного больше информации. Хотя и этого недостаточно.

4 часа

Это простая конечная точка, которая возвращает часы работы заведения и часы его популярности. Вся информация собирается по дням недели, поэтому ее легко анализировать. Похоже, это нужная нам информация, поэтому давайте добавим ее в наш набор данных.

И теперь набор данных готов для анализа.

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

Рабочий пример для статьи можно найти на моем GitHub:



Вы можете свободно делиться другими API и сервисами для сбора геоданных.