我想为哈沃辛的每一个唯一值计算id距离
from haversine import haversine, Unit
data =
id latitude longitude
a 11 22
a 33 44
b 55 66
b 77 88
c 99 11
c 12 13
start = (11,22) # (lat, lon)
end = (33,44)
haversine(start,end)*1000如何为它创建一个循环?因为真正的数据有2000+ id的
关于Hvaersine有很好的问题,但是没有关于这方面的数据准备的答案。这个问题主要是关于数据准备的。
发布于 2019-11-11 11:59:48
2000并不多,您可以使用一个简单的python循环来处理它。但是如果你想要更多的熊猫--土生土长的方式,你可以做以下几件事:
df.groupby('id').apply(lambda g: haversine(g.iloc[0], g.iloc[1])) * 1000考虑到您的数据集对于每个id始终有一对点。
输出:
id
a 3.320380e+06
b 2.601419e+06
c 9.673377e+06https://stackoverflow.com/questions/58800794
复制相似问题