У меня есть список мест. Для каждого местоположения в столбце местоположения существует функция, которая находит его координаты, если их там еще нет. Эта операция выполняется для всех. L oop копирует последнее значение широт и долгот во всех строках, чего не должно быть. Где я делаю ошибку?
Что у меня есть
location gpslat gpslong
Brandenburger Tor na na
India Gate na na
Gateway of India na na
Что я хочу
location gpslat gpslong
Brandenburger Tor 52.16 13.37
India Gate 28.61 77.22
Gateway of India 18.92 72.81
Что я получаю
location gpslat gpslong
Brandenburger Tor 18.92 72.81
India Gate 18.92 72.81
Gateway of India 18.92 72.81
Мой Код
i = 0
for location in df.location_clean:
try:
if np.isnan(float(df.gpslat.iloc[i])) == True:
df.gpslat.iloc[i], df.gpslong.iloc[i] = find_coordinates(location)
print(i, "Coordinates Found for --->", df.location_clean.iloc[i])
else:
print(i,'Coordinates Already Present')
except:
print('Spelling Mistake Encountered at', df.location_clean.iloc[i], 'Moving to NEXT row')
continue
i = i + 1
Полагаю, я делаю логическую ошибку либо с индексом i
, либо с оператором df.gpslat.iloc[i], df.gpslong.iloc[i] = find_coordinates(location)
. Я попытался изменить их и перезапустить l oop, но это то же самое. Это также трудоемкий процесс, так как есть тысячи мест.