2016-12-20 3 views
1

私は博物館を値としてキーとジオロケーション情報として示す辞書を取得するためのコードを書いています。博物館は常に博物館のリスト(df2)から取られます。私は私が望む結果をほとんど得ます。しかし、残念なことに、返された辞書は常に同じ座標を保持しています。したがって、値はキーごとに更新されません。ジオロケーションの辞書

これに手伝ってもらいたいですか?

def geocode(museum): 
    location = geolocator.geocode(museum, exactly_one = False) 
    return location 

d = {} 
for museum in df2: 
    if geocode(museum) is False: 
     d[museum] = 'Nothing found' 
    else: 
     d[museum] = [location[0].latitude],[location[0].longitude], [len(location)] 
+0

あなたは 'geocode'関数の戻りを保存し、それを割り当てるためにそれを使用する必要がありますが、つまり' location'はあなたの呼び出しに基づいて更新する必要がありますジオコード化する。 –

答えて

0

あなたはすなわち、場所がgeocodeへの通話に基づいて更新する必要があり、geocode関数の戻り値を格納し、それを割り当てるためにそれを使用する必要があります。

次のようにあなたの辞書を構築する際に変更してみてください。

for museum in df2: 
    loc = geocode(museum) 
    if loc is None: 
     d[museum] = 'Nothing found' 
    else: 
     d[museum] = [loc[0].latitude],[loc[0].longitude], [len(loc)] 
+0

次に何らかの理由でエラーが発生します – PCUnique

+1

エラーは何ですか?私は与えられた答えに同意する。 – user6035379

+0

@PCUniqueエラーのトレースバックを投稿できますか?ジオロケーターのデータがないため、問題を再現することはできません。 –