几个向量的并集
The union of several vectors
我有三个向量,v1
、v2
和 v3
,每个向量都有 500 个值。这
三个向量可能具有也可能不具有相同的值。我想知道如何
得到三个向量的并集。如果它们具有相同的值,
该值只能在联合集中显示一次。
您只需调用一次 union
:
% Create random example data
rng(1);
v1 = randi(1000,[1 500]);
v2 = randi(1000,[1 500]);
v3 = randi(1000,[1 500]);
v_union = union([v1(:);v2(:)],v3)
您可以应用从包含所有向量的元胞数组生成的 unique
to the concatenation (cat
) of all vectors. This allows an arbitrary number of vectors, using a comma-separated list。假设所有向量都具有 相同的已知方向 (它们都是行向量,或者都是列向量)。
vectors = {[1 4 3 2], [4 5 6], [5 1 8], [4 8]}; %// row vectors
result = unique(cat(2, vectors{:})); %// change "2" to "1" for column vectors
我有三个向量,v1
、v2
和 v3
,每个向量都有 500 个值。这
三个向量可能具有也可能不具有相同的值。我想知道如何
得到三个向量的并集。如果它们具有相同的值,
该值只能在联合集中显示一次。
您只需调用一次 union
:
% Create random example data
rng(1);
v1 = randi(1000,[1 500]);
v2 = randi(1000,[1 500]);
v3 = randi(1000,[1 500]);
v_union = union([v1(:);v2(:)],v3)
您可以应用从包含所有向量的元胞数组生成的 unique
to the concatenation (cat
) of all vectors. This allows an arbitrary number of vectors, using a comma-separated list。假设所有向量都具有 相同的已知方向 (它们都是行向量,或者都是列向量)。
vectors = {[1 4 3 2], [4 5 6], [5 1 8], [4 8]}; %// row vectors
result = unique(cat(2, vectors{:})); %// change "2" to "1" for column vectors