Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to Test if row is in matrix?

Tags:

matlab

octave

I am looking for a way to return the index of where a particular row resides in matrix. I can guarantee every row to be unique, as well as the row to always exist in the matrix. How can I do this in matlab?
For example, Suppose you have a matrix c:

 c =

   1   2   3
   3   2   1

further, you have a matrix b:

b =

   1   2   3

I would like some function func where I could call

func(b,c)
    1

or even just return:

0
1
like image 822
amccormack Avatar asked Mar 29 '11 16:03

amccormack


1 Answers

Use ISMEMBER. If every row is unique, and all you want is the index, you can get it as follows (replace ~ by dummy if you're using Matlab pre-2009b).

[~,index] = ismember(b,c,'rows')
like image 122
Jonas Avatar answered Nov 06 '22 04:11

Jonas