我有两个矩阵

A=[1 3;4 5;7 8;17 11]


B=[4 5;9 10;7 8;4 5;1 3;7 8;11 12].

我想得到两个矩阵的不同行之间的对应关系,就像
[I,J] = find(pdist2(A,B)==0);
display([I,J]).

在我的例子中,A和B的长度很大,所以执行pdist2并不能节省内存。
你能帮帮我吗?

最佳答案

您可以使用ismember

[tf, index]=ismember(B,A,'rows');

当索引包含A到B的相等行时,其他行将为零
如果你想把那些行用起来
index(index==0) = []
rows=A(index,:)

有关详细信息,请参见http://www.mathworks.com/

关于algorithm - 如何在Matlab中找到两个矩阵之间的行对行对应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20960164/

10-10 00:52