Numpy int array: encontre índices de várias entradas de destino

Eu tenho uma grande matriz numpy (dtype=int) e um conjunto de números que eu gostaria de encontrar nessa matriz, por exemplo,

import numpy as np
values = np.array([1, 2, 3, 1, 2, 4, 5, 6, 3, 2, 1])
searchvals = [3, 1]
# result = [0, 2, 3, 8, 10]

oresult matriz não precisa ser classificada.

A velocidade é um problema e, já que ambosvalues esearchvals pode ser grande,

for searchval in searchvals:
    np.where(values == searchval)[0]

não corta.

Alguma dica?

questionAnswers(3)

yourAnswerToTheQuestion