如何在Pandas中打印GoogleV3位置

2024-06-30 15:22:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我的数据框中有数千个地址,我在电子表格中逐个粘贴经纬度,但我想在数千个地址中自动执行。 这是我以前的代码

from geopy.geocoders import GoogleV3
geolocator = GoogleV3(api_key= "Code")
location = geolocator.geocode("JL.Balitung III")
print((location.latitude, location.longitude))

这是输出

(-6.232012999999999, 106.8087392)

这是我的数据

id  Address 
1   JL.Balitung III
2   Jalan Balitung III
3   Jl Balitung III

这是我想要的

id  Address                  Latitude               Longitude        
1   JL.Balitung III          -6.232012999999999     106.8087392
2   Jalan Erlangga III       -6.2336678             106.8086881
3   Jalan Senopati           -6.2302063             106.8066563

Tags: 数据代码id粘贴address地址locationiii
1条回答
网友
1楼 · 发布于 2024-06-30 15:22:08

使用自定义函数并指定给新列:

from geopy.geocoders import GoogleV3
geolocator = GoogleV3(api_key= "code")

def f(x):
    location = geolocator.geocode(x)
    return pd.Series((location.latitude, location.longitude))

df[['Latitude','Longitude']] = df['Address'].apply(f)
print (df)
   id             Address  Latitude   Longitude
0   1     JL.Balitung III -6.232013  106.808739
1   2  Jalan Erlangga III -6.233668  106.808688
2   3      Jalan Senopati -6.230206  106.806656

相关问题 更多 >