我有两个经度和纬度的位置,我想在python中获得这些点之间的距离。我的数据集如下所示:
df_TEST = pd.DataFrame({'Location': ['X'],
'Long': [ 28.63615701706],
'Lat': [ 41.0693487044612],
'Location1': ['Y'],
'Long1': [30.7158891385255],
'Lat1': [36.963486025471]})
我的建议Getting distance between two points based on latitude/longitude
df_TEST['distance']=geopy.distance.geodesic(( df_TEST['Long'],
df_TEST['Lat']),(df_TEST['Long1'], df_TEST['Lat1'])).km
以下我的错误,请让我知道如何解决。谢谢。
ValueError: The truth value of a Series is ambiguous. Use a.empty,
a.bool(), a.item(), a.any() or a.all().
答案 0 :(得分:1)
在Documentation中可以看到,它接受的是float元组,而不是您要在此处执行的pandas系列元组,请尝试以下操作:
df_TEST['distance']=geopy.distance.geodesic(( float(df_TEST['Long']),
float(df_TEST['Lat'])),(float(df_TEST['Long1']), float(df_TEST['Lat1']))).km