Получить широту и долготу от адреса без использования Google API - PullRequest
20 голосов
/ 30 января 2012

В настоящее время я работаю с большой базой данных, основанной на населении, где требуется, чтобы я вычислял расстояние между двумя адресами для каждого человека. Моим первым ходом мысли было получить широту и долготу, представляющие каждый адрес, а затем вычислить расстояние. Я использовал Google API для получения широты и долготы для этих адресов с помощью различных пакетов в R (например, dismo). Однако Google имеет ограничение в 2500 запросов в течение 24 часов. У меня около 300 000 адресов, и, работая 2500 в день, я не смогу уложиться в срок.

У кого-нибудь были бы предложения относительно других API, которые я мог бы использовать, чтобы получить широту и долготу, используя R?

Спасибо.

Ответы [ 3 ]

13 голосов
/ 30 января 2012

Я бы рекомендовал вам попробовать пакет RDSTK, который взаимодействует с Data Science Toolkit .Это доступно на github.

РЕДАКТИРОВАТЬ.Чтобы вычислить расстояние до дороги, я бы порекомендовал API Mapquest Directions , который, по-видимому, не имеет предустановленных ограничений согласно этой ссылке .Дайте мне знать, как это происходит.

5 голосов
/ 30 января 2012

То, что вы делаете, называется «геокодирование».Знание этого значительно улучшит ваши возможности поиска дополнительной информации :). Возможно, вы уже знали об этом, поскольку правильно пометили вопрос, но я хотел убедиться.

Вот действительно хороший предыдущий вопрос переполнения стека, хотя и не специфичный для R.

2 голосов
/ 31 января 2012

Дополнительные параметры:

  • Пакет geonames для извлечения информации из службы geonames .
  • Пакет osmar для использования API openstreetmap .

Кроме того, пакет gdistance полезен для расчета расстояний в географических сетках.

...