我有一个数组n×m,每列的最大值。除了检查每个元素之外,替代大于最大值的值的最佳方法是什么?在numpy数组中替换大于极限的值
例如:
def check_limits(bad_array, maxs):
good_array = np.copy(bad_array)
for i_line in xrange(bad_array.shape[0]):
for i_column in xrange(bad_array.shape[1]):
if good_array[i_line][i_column] >= maxs[i_column]:
good_array[i_line][i_column] = maxs[i_column] - 1
return good_array
无论如何要做到这一点更快,更简洁的方式?
此功能从NumPy 1.7开始不推荐使用。使用函数[np.copyto(a,values,where = mask)](http://docs.scipy.org/doc/numpy/reference/generated/numpy.copyto.html)来实现此功能。 – DenisKolodin 2011-11-21 09:00:11