How can I compare two matrices of different dimensions without looping?

1 visualización (últimos 30 días)
Hi, I have two matrices of different dimensions. For example:
A=[1 1 1 1; 2 1 1 1; 2 0 0 0; 3 0 1 0; 3 0 0 0; 3 0 0 1; 4 1 1 1; 5 1 0 1; 5 1 1 1; 5 0 0 1];
B=[3 0 1 0; 3 0 0 1; 5 1 0 1; 5 0 0 1];
I want to obtain a vector C of dimension size(A,1)x 1 with C(i) equal to 1 if A(i,:) is equal to at least one row of B and 0 otherwise. I cannot use loops because in practice matrices A and B have very high dimensions. In this particular example, I should get:
C=[0; 0; 0; 1; 0; 1; 0; 1; 0; 1];
Thanks!

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 27 de Nov. de 2013
Editada: Azzi Abdelmalek el 27 de Nov. de 2013
C=ismember(A,B,'rows')

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by