How can I find a vector in a matrix without using cycles?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Pedro Guevara
le 22 Mai 2019
Commenté : Star Strider
le 23 Mai 2019
Good afternoon. The reason for my message is to ask for help with this problem. Let's say I have a matrix "called A" with 2 columns and -n- number of rows, and I need to look for a vector "B" (which is 1 row and 2 columns) within all the rows that make up "A". You must find the vector in a way that recognizes in a sense or in the opposite sense, then I show an example to better understand what I say.
A =
1 2
3 4
5 3
3 1
6 4
4 2
B=
4 6 -------------------> The vector B can also be inverted (6 4).
The result I expect to be told in which row is the vector "B" inside the matrix "A". for the example above I would expect the answer to be row 5
Thank you very much for your help.
0 commentaires
Réponse acceptée
Star Strider
le 22 Mai 2019
Try this:
A = [1 2
3 4
5 3
3 1
6 4
4 2];
B = [4 6];
Lidx = ismember(sort(A,2),sort(B,2),'rows')
rowNumber = find(Lidx)
producing:
Lidx =
6×1 logical array
0
0
0
0
1
0
rowNumber =
5
4 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!