【发布时间】:2020-08-12 23:53:14
【问题描述】:
您好,我想知道这个算法是否更有效。目的是当半径大于用户设置的最大半径时,删除3个数组中的所有点。
此代码在比率数组中搜索位置“i”,当该值大于 max_rad 时,它会从 Nx1 的 3 个 numpy 数组中删除元素“i”。
for i in range(len(rad_vec)-1,-1,-1):
if rad_vec_temp[i] >= max_rad :
azim_vec = np.delete(azim_vec, i)
elev_vec = np.delete(elev_vec, i)
rad_vec = np.delete(rad_vec, i)
我需要另一种方法来执行相同的过程,但比这种方法更快。
【问题讨论】:
-
只需根据条件和索引创建掩码即可。不要迭代,使用矢量化方法
标签: python arrays algorithm numpy sorting