将值添加到For Loop Results中的数据帧



我有这个数组:

机罩

array([['Altos de Arroyo Hondo ,Santo Domingo'],
['Arroyo Manzano ,Santo Domingo'],
['Atala ,Santo Domingo'],
['Bella Vista ,Santo Domingo'],
['Buenos Aires-Independencia ,Santo Domingo'],
['Cacique ,Santo Domingo'],
['Centro de los Héroes ,Santo Domingo'],
['Centro Olímpico Duarte ,Santo Domingo'],
['Cerros de Arroyo Hondo ,Santo Domingo'],
['Ciudad Colonial ,Santo Domingo'],
['Ciudad Nueva ,Santo Domingo'],
['Veinticuatro de Abril ,Santo Domingo'],
['Viejo Arroyo Hondo ,Santo Domingo'],
['Villa Consuelo ,Santo Domingo'],
['Villa Francisca ,Santo Domingo'],
['Villa Juana ,Santo Domingo'],
['Villas Agricolas ,Santo Domingo'],
['Distrito Nacional ,Santo Domingo']], dtype=object)

我创建了一个空的数据帧:

hoods_located  = pd.DataFrame(columns =['Neighborhood', 'Latitude', 'Longitude'])

我试图完成的是将for循环的结果中的值插入到数据帧中:

for i in hoods:
geolocator
location = geolocator.geocode(i)
latitude = location.latitude
longitude = location.longitude
hoods_located.append({'Neighborhood': i, 'Latitude': latitude, 'Longitude': longitude}, ignore_index=True)

使用Geopy,for循环为hoods数组的每个值查找Lat和Lon,但无法找出如何将这些值附加到新的数据帧hoods_located。

谢谢。

我建议您使用defaultdict将数据放入字典,并直接读取到数据帧中;它还消除了创建要填充的空数据帧的需要:

from collections import defaultdict
d = defaultdict(list)
#iterate through hood list and create dictionary
for Neighbourhood in hoods:
location = geolocator.geocode(Neighbourhood)
d['latitude'].append(location.latitude)
d['longitude'].append(location.longitude)
d['Neighbourhood'].append(Neighbourhood)

#read into dataframe
pd.DataFrame(d)

最新更新