Я пытаюсь найти шаблоны в массиве numpy, называемом значениями. Я хотел бы вернуть начальную позицию индекса шаблона. Я знаю, что мог бы перебирать каждый элемент и проверять, соответствуют ли этот и следующий элемент шаблону, но на большом наборе данных это невероятно неэффективно, и я ищу лучшую альтернативу.
У меня есть рабочее решение, использующее np.where для поиска одного значения, но я не могу заставить его работать с поиском шаблона или двух чисел.
Пример:
import numpy as np
values = np.array([0,1,2,1,2,4,5,6,1,2,1])
searchval = [1,2]
print np.where(values == searchval)[0]
Вывод:
[]
Ожидаемый результат:
[1, 3, 8]