matlab中,从两组2维数组中按规律提出的元素

两组数组a,b,如果两者的第一列相等,并且第二列相等,则输出这些行的数据
例如:

a=[1,1,10;
2,2,20;
3,3,30]

b=[2,2,200;
3,3,300;
4,4,400]

a的第2,3两行和b的第1,2两行符合要求,那么输出
c=[2,2,20,200;
3,3,30,300;]

这程序怎么写呢?

a=[1,1,10;
2,2,20;
3,3,30]

b=[2,2,200;
3,3,300;
4,4,400]
[mm,nn]=size(a);
[kk,ll]=size(b);
%z=zeros()
k=1;
for i=1:mm
for j=1:kk
if a(i,1)==b(j,1)
if a(i,2)==b(j,2)
z(k,:)=a(i,:);
f(k,:)=[z(k,:),b(j,3:end)];
k=k+1;
end
end
end
end
f

a =

1 1 10
2 2 20
3 3 30

b =

2 2 200
3 3 300
4 4 400

f =

2 2 20 200
3 3 30 300
希望您能满意
温馨提示:答案为网友推荐,仅供参考
相似回答