How to search for an array inside another array?

85 visualizzazioni (ultimi 30 giorni)
E.g: I have the following array:
a = [1 1; 1 2; 1 3; 1 4; 1 1; 1 4; 1 5];
I want to search for the occurance of each row of the following array inside "a":
b = [1 1; 1 4; 1 5]
The output should be the index location as follows:
idx = [1;5;4;6;7]
I tried the following code. But it does not work:
idx = [];
for i = size(b,1)
temp_idx = find(b(i,:) == a )
idx = [idx; temp_idx];
end
I there any way to do this ?
  2 Commenti
Rik
Rik il 26 Giu 2020
Why would that be the output? The b array only occurs in a only once: at the bottom.
Tintumon
Tintumon il 26 Giu 2020
I need to do a search for each row of "b" array and check whether that row occurs in array.

Accedi per commentare.

Risposta accettata

Rik
Rik il 26 Giu 2020
idx=find(ismember(a,b,'row'))

Più risposte (0)

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by