我有一个带有“城市”和“州”字符串的列。我尝试使用geopy library中的geocoder计算纬度和经度,但由于超出了请求数,因此超时。数据集中大约有85895行。所以我对“CITY_STATE”列进行了值计算,共有1340个值。是否有一种方法可以找到1340个值的纬度和经度,然后将这些值与相应的“城市”和“州”进行映射
from opencage.geocoder import OpenCageGeocode
key = 'my_key' # get api key from : https://opencagedata.com
geocoder = OpenCageGeocode(key)
list_lat = [] # create empty lists
list_long = []
for index, row in train.iterrows(): # iterate over rows in dataframe
City = row['CITY']
State = row['STATE']
query = str(City)+','+str(State)
results = geocoder.geocode(query)
lat = results[0]['geometry']['lat']
long = results[0]['geometry']['lng']
list_lat.append(lat)
list_long.append(long)
# create new columns from lists
train['lat'] = list_lat
test['lon'] = list_long
我认为您可以将^{} 与自定义函数一起使用,并将两列连接到系列
s
:相关问题 更多 >
编程相关推荐