2016-08-16 13 views
0

リスト(list_addresses)からデータを取得し、データフレーム(dfloc)の別の列にデータを取り込もうとしています。私は以下のコードを使用します。どこに間違っているのかわかりません。pandasデータフレーム内の個々の列にデータを設定する

値はlist_addressesには存在しますが、データフレームには入力されません。

ご協力いただければ幸いです。あなたは[(LAT1、Lon1)、(LAT2、Lon2)、等...]の形式でリストやタプルのリストを持っているよう

for index in range(len(list_addresses)): 
location = geolocator.reverse([list_addresses[index][0],list_addresses[index][1]]) 
dfloc.loc[dfloc.Latitude] = list_addresses[index][0] 
dfloc.loc[dfloc.Longitude] = list_addresses[index][1] 
dfloc.loc[dfloc.Address] = location.address 
+0

:私は、一度に列全体を割り当て、各列のリストを作成したいです'dfloc ['Latitude'] = list_addresses [index] [0]' – jezrael

+0

@jezrael:私は以前これを試しましたが、それはうまくいきませんでした。しかし、私はリストの値を印刷するとき、それは正しく印刷されます。 – user3447653

+0

私はデータがないので、問題のあるテストです。可能であれば、 'geolocator.reverse'を説明するために' dfloc'、 'list_addresses'というサンプルを追加してください。私はあなたがより良いテストのためにあなたの問題を単純化しようとすることができると思います。 – jezrael

答えて

1

だからそれが見えます。 [0] `dfloc.loc [ '緯度'] = list_addresses [インデックス]`または - 第二 `dfloc`を除去してみ

lat_list = [x[0] for x in list_addresses] 
lon_list = [x[1] for x in list_addresses] 
address_list = [] 

for index in range(len(list_addresses)): 
    location = geolocator.reverse([list_addresses[index][0],list_addresses[index][1]]) 
    address_list.append(location.address)   

dfloc['Latitude'] = lat_list 
dfloc['Longitude'] = lon_list 
dfloc['Address'] = address_list 
+0

これは完全に正常に動作します。 – user3447653

関連する問題