python - 如何有效地将纬度/经度地理编码反转为自治市镇

标签 python google-maps gis geocoding

我正在处理纽约市出租车数据集。数据集包含日期时间、接送纬度/经度、下车纬度/经度等列。现在我想对纬度/经度进行反向地理编码以找到自治市镇/社区。我遇到了 geopy 并发现类似这样的东西工作得很好:

from geopy.geocoders import Nominatim
geolocator = Nominatim()

borough = []
loc = ['40.764141, -73.954430', '40.78993085, -73.9496098723']
for l in loc:
    sub = str(geolocator.reverse(l))
    borough.append(sub.split(', ')[2])
borough
## ['Upper East Side', 'East Harlem']

这很完美,正是我想要的。但是,我的数据集有几百万行,由于这是一个在线 API,因此不可行。有没有更好的方法来实现这一点?

最佳答案

你可以给Reverse Geocoder尝试一下,我相信它提供了您需要的功能。
它需要一个纬度/经度坐标并返回(离线)最近的城镇/城市、国家、行政 1 和 2 区域。

关于python - 如何有效地将纬度/经度地理编码反转为自治市镇,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34984044/

相关文章:

r - ggplot2(和 sf)中世界地图的整个地球多边形

打印时的Python字典键顺序

python - 在Paramiko中的Windows SSH服务器上执行命令(pg_dump)之前设置环境变量(PGPASSWORD)

javascript - OverlayView 自动定位 Google map V3

php - googlemaps 文档类型错误

javascript - 在传单上使用自定义 map 投影

python - celery 任务和xmpp

python - 在 Django ORM 中旋转数据和复杂注释

android - 将 Google maps api v2 添加到现有项目

postgresql - PostgreSQL 是否实现地理空间关系查询?