Вопрос по numpy, pattern-matching – Соответствие массива строке в Numpy

3

У меня есть массив 'A'; формы (50,3) и другого массива "B"; формы (1,3).

На самом деле этот B - это строка в A. Так что мне нужно найти его местоположение.

я использовалnp.where(A==B), но это дает искомые местаelement wise, Например, ниже приведен результат, который я получил:

>>> np.where(A == B)
(array([ 3,  3,  3, 30, 37, 44]), array([0, 1, 2, 1, 2, 0]))

На самом деле B - это 4-й ряд в A (в моем случае). Но приведенный выше результат дает (3,0) (3,1) (3,2) и другие, которые сопоставляются поэлементно.

Вместо этого мне нужен ответ '3' это ответ, полученный при поиске B в A в целом, и он также удаляет другие, такие как (30,1) (37,2) ... которые являются частичными совпадениями.

Как я могу сделать это в Numpy?

Спасибо.

Ваш Ответ

1   ответ
11

Вы можете указать ось:

numpy.where((A == B).all(axis=1))
Error: User Rate Limit Exceeded

Похожие вопросы