源自:http://www.w2bc.com/Article/16709

matlab中setdiff()函数作用:判断2个数组中不同元素

c = setdiff(A, B) 
返回在A中有,而B中没有的值,结果向量将以升序排序返回。在集合论中,c = A - B。A和B也可以是字符串细胞数组。
c = setdiff(A, B, 'rows')

当A和B是具有相同列数的矩阵时,返回A中有而B中没有的那些行。

【例】

R=[0 0 0 0 0 0 0 0]';

j=[2 3 4];

n=length(j);

for i=1:n

R(j(i))=1;

end

R(setdiff(1:8,j))=2;%除R(2)、R(3)、R(4)之外的值都为2

R_out=R

05-13 23:34