首页 > 解决方案 > 如何使用 Geopy 从大数据框的坐标中获取邮政编码

问题描述

我有一个大约 750,000 行的数据框。我在 2 个不同的列中有经度和纬度。我想使用 geopy 来获取每一行的邮政编码。我当前的代码运行了一个小时,到目前为止还看不到尽头。有没有办法更快地做到这一点?

def get_zipcode(df, geolocator, latitude_column, longitude_column):
    location = geolocator.reverse((df[latitude_column], df[longitude_column]))
    return location.raw['address']['postcode']
geolocator = geopy.Nominatim(user_agent='dsir group project')
from geopy.extra.rate_limiter import RateLimiter
geocode = RateLimiter(geolocator.geocode, min_delay_seconds=1)

df.apply(get_zipcode, axis=1, geolocator=geolocator, lat_column='latitude', long_column='longitude')

标签: pythonpandasgeopy

解决方案


推荐阅读