比较两个不同大小的矩阵,以获得Matlab中的常用元素

时间:2013-08-24 12:11:19

标签: matlab

我的矩阵A大小为100x100,矩阵B大小为200x200。我想检查A中是否找到B中的每个元素,并返回公共元素的向量。因此,例如,如果A(1,1)中的第一个元素为“10”,那么将检查B是否具有元素“10”,如果是,则将添加到结果公共中元素矢量。所以,如果有人可以请提供建议。

1 个答案:

答案 0 :(得分:3)

使用:

[C, ia, ib] = intersect(A,B);

C是公共元素向量,ia包含A的索引,而ib包含B的索引,因此C = A(ia) }和C = B(ib)。如果您不想索引,只需使用:

C = intersect(A,B);

A矩阵中搜索B矩阵中的每个元素您可以将它们转换为行向量,如下所示:

A1 = reshape(A, 1, length(A));
B1 = reshape(B, 1, length(B));

然后使用intersect