в качестве конкретного примера рассмотрите следующие массивы:
Код: Выделить всё
x = np.array([1, 2, 3])
y = np.array([4, 5, 6])
q = np.array([2, 0])
Код: Выделить всё
out = np.array([5, np.nan])
< /code>
с циклами это можно сделать так: < /p>
out = []
for i in range(len(q)):
for j in range(len(x)):
if np.allclose(q[i], x[j]):
out.append(y[j])
break
else:
out.append(np.nan)
output = np.array(out)
< /code>
Очевидно, что это довольно медленно. Есть ли более простой способ сделать это с помощью Numpy встроенными, такими как np.argwhere
Подробнее здесь: https://stackoverflow.com/questions/726 ... rays-align