Если у меня есть массив, и я хочу установить значения 'close' для некоторого значения в качестве этого значения, каков наилучший способ сделать это?Я задаюсь вопросом, является ли их функция numpy для этого.Если нет функции numpy, то есть ли код под «лучшим» (т.е. самым быстрым / наиболее эффективным) способом сделать это?Работает и для многомерных массивов.
Код:
from numpy import array
tol = 1e-5
# Some array with values close to 0 and 1
t = array([1.0e-10, -1.0e-10, 1.0+1.0e-10, 1.0-1.0e-10, 5.0])
print t[0], t[1], t[2], t[3], t[4]
# Set values within 'tol' of zero to zero
t[abs(t) < tol] = 0.
print t[0], t[1], t[2], t[3], t[4]
# Set values within 'tol' of some value to that value
val = 1.
t[abs(t-val) < tol] = val
print t[0], t[1], t[2], t[3], t[4]