如何在Python数据框内找到最接近的坐标

时间:2019-05-27 20:35:11

标签: python-3.x pandas dataframe

我有一个名称和坐标(纬度,经度)的数据框,我想使用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)

0 个答案:

没有答案