Как проверить, находится ли строка в матрице?

Я ищу способ вернуть индекс того, где находится конкретная строка в матрице. Я могу гарантировать, что каждая строка будет уникальной, а также что строка всегда будет существовать в матрице. Как я могу сделать это в Matlab?
Например, предположим, что у вас есть матрица c:

 c =

   1   2   3
   3   2   1

далее у вас есть матрица b:

b =

   1   2   3

Мне нужна функция func, где я мог бы вызвать

func(b,c)
    1

или даже просто вернуть:

0
1

person amccormack    schedule 29.03.2011    source источник


Ответы (1)


Используйте ISMEMBER. Если каждая строка уникальна, и все, что вам нужно, это индекс, вы можете получить его следующим образом (замените ~ на dummy, если вы используете Matlab до 2009b).

[~,index] = ismember(b,c,'rows')
person Jonas    schedule 29.03.2011