У меня есть два NumPy массива:
import numpy as np
m = 3
x = np.array([1, 0, 0, np.inf, 0, 0, 1, 1, 2, np.inf, np.inf, 2, 3, 4, 5, 6, 7, 8, 9, 10])
y = np.arange(x.shape[0]-m+1)
Допустим, что когда бы ни было np.inf
в x
, эта позиция индекса называется i
. Для каждого i
я хочу установить значения y[i-m+1:i+m] = np.inf
. Таким образом, после замены y
должно выглядеть следующим образом:
array([0, np.inf, np.inf, np.inf, np.inf, np.inf, 6, np.inf, np.inf, np.inf, np.inf, np.inf, np.inf, 13, 14, 15, 16, 17])
Это также должно работать, когда значение m
увеличивается или уменьшается.