问题描述
我想向数据框中添加一列,其距离为几个点。
import geopy.distance
point1 = (62.14501749692785,15.489451406957805)
point2 = (61.18566746746592,9.600779755097122)
def distancer(row,point):
coords_1 = (row['Latitude'],row['Longitude'])
return geopy.distance.VincentyDistance(coords_1,point).km
我的问题是如何定义/调用函数。
例如添加一个距离point1
的列:
dataset['dist_point1'] = dataset.apply(distancer(row=row,point = point1),axis=1)
dataset['dist_point2'] = dataset.apply(distancer(row=row,point = point2),axis=1)
这不起作用,因为我无法将“row
”参数传递给函数。
编辑:
dataset['coords'] = list(zip(dataset['Latitude'],dataset['Longitude']))
dataset['dist_point1'] = geopy.distance.VincentyDistance(dataset['coords'],point1).km
正在返回错误:
ValueError: When creating a Point from sequence,it must not have more than 3 items.
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)