У меня есть данные широты и долготы. Цель состоит в том, чтобы применить пакет censusgeocode ко всему фрейму данных, где наш x - это наш столбец широты, а наш y - наш столбец долготы. После этого я надеюсь получить фрейм данных с геоидом, состоянием, округом, трактом и блоком в виде столбцов. Можно ли сделать это так, чтобы мне не приходилось перебирать каждую геолокацию в a для l oop? Я мог бы попробовать функцию apply, однако функция apply не обязательно была бы способна адаптироваться к такого рода проблемам. Ниже приведен мой код для определения фрейма данных и добавления решения к:
import pandas as pd
import censusgeocode as cg
data = pd.DataFrame({'latitude':[40.811765, 40.30019, 39.2464], 'longitude':[-81.528874, -81.83743, -83.60476]})
И то, что я пробовал до сих пор, занимает слишком много времени, чтобы сделать это с тысячами местоположений:
geo_list = []
for f, g in zip(data['x'], data['y']):
try:
census = cg.coordinates(x=g, y=f)['2010 Census Blocks'][0]
data = [census['GEOID'], census['STATE'], census['COUNTY'], census['TRACT'], census['BLOCK'], f, g]
geo_list.append(data)
except:
pass