How to search for an array inside another array?

128 次查看(过去 30 天)
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 个评论
Rik
Rik 2020-6-26
Why would that be the output? The b array only occurs in a only once: at the bottom.
Tintumon
Tintumon 2020-6-26
I need to do a search for each row of "b" array and check whether that row occurs in array.

请先登录,再进行评论。

采纳的回答

Rik
Rik 2020-6-26
idx=find(ismember(a,b,'row'))

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by