首页 > 解决方案 > 迭代 numpy 数组元素的最快方法是什么?

问题描述

我有一个浮点距离值的 NumPy 数组,例如 D,我需要在 numpy 数组的每个元素上应用 geopy python 库中的测地线函数。我已经使用 for 循环迭代成功地完成了它,但是它太慢了,因为 D 大小有时会大于 3000 个元素。有什么方法可以使用向量化或其他更快的方法而不是 for 循环来将函数应用于 NumPy 数组的每个元素?像这样的东西:

from geopy.distance import geodesic

lat_start = 48.778767
long_start = -123.903275
bearing = 39.060744
coords1=(lat_start,long_start)
D = array([  0.        ,  60.00501526, 120.01003051, 180.01504577,
       240.02006102, 300.02507628, 360.03009153, 420.03510679,
       480.04012205, 540.0451373 ])
destination = geodesic(kilometers= D/ 1000).destination(coords1, bearing)

标签: pythonnumpygeopy

解决方案


推荐阅读