繁体   English   中英

用不同DataFrames Python Pandas的经纬度计算Km

[英]Calculate Km with latitude and longitude of different DataFrames Python Pandas

我有 4 个数据帧(ticket_data.csv、providers.csv、station.csv 和 city.csv)

在station.csv 中,我有 2 个名为 o_city(始发城市)和 d_city(目的地城市)的 colls,这两个 colls 给了我我需要在 citys.csv 中查找的城市的 id

在citys.csv 中,我有每个城市的纬度和经度。

如何计算每张票的 o_city 和 d_city 之间的距离? 我尝试使用 pyproj,但我没有找到一种方法来使其与每张票一起使用。

csv文件截图:

票证数据.csv

城市.csv

欢迎使用 StackOverflow! 在您的城市数据框中,假设这里称为city_df 对于每一行,您可以使用欧几里得几何中称为半正弦距离公式的东西来计算地球表面上两个坐标对之间的距离。 以下是一些虚拟 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' 表示法。鉴于此,距离的输出值将以公里为单位。

希望这可以帮助您更接近解决您的问题!

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM