Найти несколько значений в массиве Numpy

Я ищу функцию numpy, чтобы найти индексы, в которых определенные значения находятся в векторе (xs). Значения задаются в другом массиве (ys). Возвращаемые индексы должны следовать порядку ys.

В коде я хочу заменить понимание списка ниже функцией numpy.

>> import numpy as np
>> xs = np.asarray([45, 67, 32, 52, 94, 64, 21])
>> ys = np.asarray([67, 94])
>> ndx = np.asarray([np.nonzero(xs == y)[0][0] for y in ys]) # <---- This line
>> print(ndx)
[1 4]

Есть ли быстрый способ?

Спасибо

14
задан Hernan 5 March 2012 в 12:24
поделиться