i have a dataframe:
routeId latitude_value longitude_value
r1 28.210216 22.813209
r2 28.216103 22.496735
r3 28.161786 22.842318
r4 28.093110 22.807081
r5 28.220370 22.503500
r6 28.220370 22.503500
r7 28.220370 22.503500
我希望生成一个类似于以下的数据框df2:
routeId nearest
r1 r3 (for example)
r2 ... similarly for all the routes.
我要实现的逻辑是:对于每条路线,我应该找到所有其他路线的欧几里得距离,并在routeId上进行迭代。
有一个计算欧几里得距离的函数。
dist = math.hypot(x2 - x1, y2 - y1)
但我不确定如何构建一个函数,其中我将传递一个数据框或使用.apply()
def get_nearest_route():
.....
return df2