Python dataframe groupby ID并获取点之间的平均距离

2024-09-24 00:34:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个这样的数据框

ID   |  priority     |    latitude    |   longitude
412  |     1         |    36.67495    |   34.36598056
412  |     2         |    39.88226389 |   44.04348611
412  |     3         |    39.94746667 |   31.35788230
764  |     1         |    39.94746667 |   44.07428056
764  |     2         |    39.88226389 |   43.98109444
764  |     3         |    36.67495    |   32.46473056

我想在这里做的是,对于每个ID,我想平均计算从第一优先级到第二优先级和第三优先级的距离

412 ID的示例

我有一个计算两点之间距离的函数

km = distance_calc(lat1,lon1,latx,lonx)



distance_calc(36.67495,34.36598056,39.88226389,44.04348611)
distance_calc(36.67495,34.36598056,39.94746667,31.35788230)

此操作将对每个ID重复,我将对所有距离取平均值。 我用dataframe行迭代解决了这个问题,但是这个方法非常慢


Tags: 数据函数id距离示例calcdistancepriority