如何在python-error中找到在给定经度和纬度的两点之间的距离?

时间:2019-07-12 09:37:30

标签: python distance latitude-longitude

我有两个经度和纬度的位置,我想在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().

1 个答案:

答案 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