我认为最快和最简洁的方法是使用NumPy内置的Fancy indexing。如果您具有ndarray
namedarr
,则可以将所有元素替换>255
为一个值x
,如下所示:
arr[arr > 255] = x
我使用500 x 500随机矩阵在计算机上运行此命令,将所有> 0.5的值替换为5,平均花费了7.59ms。
In [1]: import numpy as np
In [2]: A = np.random.rand(500, 500)
In [3]: timeit A[A > 0.5] = 5
100 loops, best of 3: 7.59 ms per loop