利用Python Pandas不同数据帧的经纬度计算Km

2024-06-03 03:37:46 发布

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

我有4个数据帧(罚单_数据.csv, 提供商.csv, 工作站.csv以及城市.csv)在

在工作站.csv我有两个coll,分别叫o峎city(原籍城市)和dïcity(目的地城市),这两个coll给了我需要查找的城市的id城市.csv在

在城市.csv我知道每个城市的纬度和长度。在

我如何计算出每张票在奥尤市和德乌市之间的距离?我试着用pyproj,但是我没有找到一种方法使它与每张票一起工作。。在

csv文件截图:

ticket_data.csv

cities.csv


Tags: 文件csv数据方法id距离city罚单
1条回答
网友
1楼 · 发布于 2024-06-03 03:37:46

欢迎来到StackOverflow!在您的城市数据框中,假设在这里它被称为city_df;对于每一行,您可以使用欧几里德几何学中的haversine距离公式来计算地球表面上两个坐标对之间的距离。下面是一个虚拟Python3代码的例子,它大致说明了如何实现这一点(为了便于通信,只使用两对坐标):

from haversine import haversine

distance = haversine((city_df[origin_lat][0], city_df[origin_lon][0]), (city_df[destination_lat][0], city_df[destination_lon][0]))

坐标必须采用十进制表示法,如43.9202而不是43*38“67”符号。鉴于此,距离的输出值将以km为单位。在

希望这能帮助你更接近解决你的问题!在

p.S.-您可能需要安装haversine,因为它不在标准库中

相关问题 更多 >