我有这个python代码:
for i, num in enumerate(num_arr):
if num > threshold:
num_arr[i] = threshold
'num_arr'是一个填充了整数的简单数组, “阈值”可能从10到100,000不等。 有没有更快的方法来达到相同的结果?按位运算还是类似的东西?
答案 0 :(得分:1)
您可以使用.clip(..)
[numpy-doc]。例如:
num_arr = num_arr.clip(max=threshold)
例如:
>>> a
array([14, 25, 7, 12, 2])
>>> a.clip(max=10)
array([10, 10, 7, 10, 2])