假设我有两个矩阵:
A = [1;
2;
3;
4;
5]
和
B = [1 1 2 1;
2 3 3 4;
5 5 5 5;
1 4 4 4;
5 5 1 2]
我需要一个结果矩阵来显示 A 中的项目在 B 中的相应行中出现了多少次,如下所示:
C = [3;
1;
0;
3;
2]
目前,我正在使用 for 循环内的 ismember 来执行此操作,并将每行的结果相加。但由于矩阵的大小,这需要很长时间。有没有不使用循环就可以做到这一点?
编辑以显示我当前的代码:
for i=1:1:length(A)
C(i) = sum(ismember(B(i,:),A(i)),2);
end
但实际上,我的矩阵有超过 500k 行,我希望通过删除循环来提高该代码的效率。