我有一个简单的问题,我对matlab很新,所以我在实现它时遇到了问题我有两个64x2矩阵u和hi必须检查u中的单个行是不是等于h中的所有行,那么不相等的行应该保存在一个单独的矩阵中,同时我写了这段代码,但它做的是r(i,:)得到u(i, :)当这段代码运行时,我想要的是只有那些u(i,:)的值应该存储在r中,它们与h矩阵中的任何行都不相似。在matlab中实现“不等于”循环
h=[];
for j=1:8
for i=1:8
h=[h; i j];
end
end
u=[5.3,1.4;6,8;2,3;3,5.5;2.6,8;3.7,2;4,2;5,3;1.9,8;5.4,4;3.2,3;2,2;2,4;2,3;8,2.2;8,4;7.3,1.5;6.2,5.1;2.4,1.5;3,5;2,7.1;1.8,2.7;3,4;6,5;6,1;5,4;4,6;3.5,2;5,7;7.2,8;7,7;5,5;6,3;6,6;1,2;5,8;3,5;1,5;2,2;2,1;6,3;4,7;6,8;3,6;1,6;5,2;3,5;8,7;8,4;4,8;1,1;6,3;7,5;8,1;1,6;4,5;5,5;6,7;6,7;6,7;6,3;3,4;5,7;1,1]
for i=1
for j=1:64
if u(i,:)==h(j,:)
c=1
else
c=0
if c==0
r(i,:)=u(i,:)
end
end
end
end
谁能帮助我,请
我试图用另一个循环使用不等于u(i,:)〜= h(j,:)但不能给出更好的结果ts –
'if'语句中的条件应该是标量。使用'all(u(i,:)== h(j,:))'或'isequal(u(i,:),h(j,:)' – Mikhail
我已经尝试了,但它给出了相同的答案,我在r矩阵中得到了u的所有值,而我只需要那些不存在于h矩阵中的u值 –