我有一个名称和坐标(纬度,经度)的数据框,我想使用Haversine距离找到与另一个坐标最接近的坐标。...
我尝试使用循环来计算数据帧中每个坐标到彼此坐标的正弦距离,但是我发现此方法非常慢
msgDataFrame
.select(SOURCE, TYPE)
.where(msgDataFrame.col(TYPE).equalTo("X"))
.groupBy(SOURCE)
.count()
.show(); // <-- gives me count for 'X'-es
msgDataFrame
.select(SOURCE, TYPE)
.filter(msgDataFrame.col(TYPE).equalTo("Y"))
.groupBy(SOURCE)
.count()
.show(); // <-- gives me count for 'Y'-cs
给出此输入数据框,对于每个使用hasrsine距离的名称和坐标,找到一个在250米以内的点的名称...创建一个列Closest并记下名称,如果没有点在250米以内,则记录Nan
Names, Coord
ab (51.44, 0.224)
ad (-58.256, 0.224)
af (53.44, 0.232)
ag (51.67, 0.123)
ay (50.44, 1.718)
as (59.93, -1.582)
al (53.40, 0.224)