2017-02-16 6 views
0

をループするときには位置情報を取得しようとするとどうしてこのようなことが起こるのかわかりません。私のサンプルCSVファイルは、以下のPython geopyは手作業の文字列を受け入れますが、csv df

address,city,state,zip 
767 5th Ave, New York, NY, 10153 

を持っていると私は問題

from geopy.geocoders import Nominatim 
geolocator = Nominatim() 
import pandas as pd 

df = pd.read_csv('test.csv') 

for index, row in df.iterrows(): 
    # doesnt work when looping 
    location = geolocator.geocode(row['address'],row['city'],row['state'],row['zip']) 

    # works manually 
    #location = geolocator.geocode("767 5th Ave, New York, NY, 10153") 
    print(location.raw) 

を持っていますどこに私のpythonファイルは次のようになり、私はコメントを含まこれらは同じではありませんか?

答えて

0

私はこの

for index, row in df.iterrows(): 
    street = str(row['address']) 
    city = str(row['city']) 
    state = str(row['state']) 
    zipcode = str(row['zip']) 
    location = geolocator.geocode("%s %s %s %s" % (street,city,state,zipcode)) 
    print(location.raw) 

歓声

、これが最も効率的な方法であるなら、私が知っているようにそれを解決
関連する問題