Я действительно изо всех сил пытаюсь найти материал, который объясняет новичку, как геокодировать.
У меня есть несколько довольно больших наборов данных, один из которых содержит более 2 миллионов записей, поэтому я максимально увеличу дневной лимит Google (по всей видимости, 2500).
Мой первый набор данных имеет только 240 и является хорошим началом для уточнения кода. У меня есть df со следующим.
Store# Name ZipCode
X. X. 12345
Эти почтовые индексы из США и Канады.
Я пытаюсь написать некоторый код, который будет перебирать столбец ZipCode и добавлять широту и долготу к df.
До сих пор я нашел в стеке следующее, что я пытаюсь адаптировать к своему сценарию:
import geocoder
def get_geocoder(ZipCode):
# initialize your variable to None
lat_lng_coords = None
# loop until you get the coordinates
while(lat_lng_coords is None):
g = geocoder.google('{}, Toronto, Ontario'.format('ZipCode'))
lat_lng_coords = g.latlng
latitude = lat_lng_coords[0]
longitude = lat_lng_coords[1]
return latitude,longitude
##loop to append the lat and long to df##
for i in range(0,len(df)):
df['Latitude'][i],df['Longitude'][i]=get_geocoder(df.iloc[i]['ZipCode'])
Я борюсь с адаптацией:
g = geocoder.google('{}, Toronto, Ontario'.format('ZipCode'))
Я все еще довольно новичок в Python, и часть форматирования отбрасывает меня
Также большое спасибо @AnkuGulati, где я получил оригинальный код:
Как получить координаты из почтовых индексов и добавить их в df с помощью цикла