Find if two elements are in a row of a matrix

1 visualización (últimos 30 días)
AI-CHI Chang
AI-CHI Chang el 6 de Mzo. de 2022
Comentada: AI-CHI Chang el 6 de Mzo. de 2022
I want to find two elements in A are also in B,and I would like to know B's index.
So the answer is 1 2 4 5 in B.
A=[1,3,7]
B=[1 8 3;
1 2 3;
3 4 5;
1 7 9
2 1 3];
This is what I tried.But clearly,it's not smart
find(B(:,1)==A(1,1)&B(:,2)==A(1,2))
find(B(:,1)==A(1,1)&B(:,3)==A(1,2))
find(B(:,2)==A(1,1)&B(:,3)==A(1,2))
(I can sort them and use ismember but it's still not intuitive. Any other function?)
  2 comentarios
Matt J
Matt J el 6 de Mzo. de 2022
So the answer is 1 2 4 5 in B.
Why is that the answer?
AI-CHI Chang
AI-CHI Chang el 6 de Mzo. de 2022
Sorry not clear. I just put on part of my solution. It's because B's 1 2 4 5 row have two of elements in A

Iniciar sesión para comentar.

Respuesta aceptada

Stephen23
Stephen23 el 6 de Mzo. de 2022
Editada: Stephen23 el 6 de Mzo. de 2022
A = [1,3,7];
B = [1,8,3;1,2,3;3,4,5;1,7,9;2,1,3];
V = find(sum(ismember(B,A),2)==2)
V = 4×1
1 2 4 5

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by