组合两个数组同时排除在两个数组中都找到的行
Combining two arrays while excluding rows that are found in both
我有两个数组:
a = [1 2; 2 3; 4 5];
b = [2 5; 1 2; 6 9];
现在我想创建一个新数组 c
,它将不包含两个数组(a
和 b
)中相同的行。所以 c
数组看起来像
c = [2 3; 4 5; 2 5; 6 9];
我该怎么做?有什么命令可以使用吗?
请在下一个问题中显示您到目前为止所做的尝试。
c= [a(~ismember(a,b,'rows'),:);b(~ismember(b,a,'rows'),:)]
您可以使用 setxor
和 rows
选项。这个函数默认是按升序排列行,但是如果你想保持原来的顺序,你可以使用stable
选项:
c=setxor(a,b,'rows','stable')
c =
2 3
4 5
2 5
6 9
我有两个数组:
a = [1 2; 2 3; 4 5];
b = [2 5; 1 2; 6 9];
现在我想创建一个新数组 c
,它将不包含两个数组(a
和 b
)中相同的行。所以 c
数组看起来像
c = [2 3; 4 5; 2 5; 6 9];
我该怎么做?有什么命令可以使用吗?
请在下一个问题中显示您到目前为止所做的尝试。
c= [a(~ismember(a,b,'rows'),:);b(~ismember(b,a,'rows'),:)]
您可以使用 setxor
和 rows
选项。这个函数默认是按升序排列行,但是如果你想保持原来的顺序,你可以使用stable
选项:
c=setxor(a,b,'rows','stable')
c =
2 3
4 5
2 5
6 9