1、在取数组的并集时,会使用到union函数:
% 数据
data1 = [1, 2, 3, 4];
data2 = [3, 4, 5, 6];
% 求并集
union_data = union(data1, data2);
2、但是数据有多组时简单的使用union无法得到想要的结果:
% 数据
data1 = [1, 2, 3, 4];
data2 = [3, 4, 5, 6];
data3 = [5, 6, 7, 8];
% 求并集
union_data = union(data1, data2, data3);
报错:错误使用 union (line 130)
输入无效。有效标志是 'rows'、'stable'、'sorted'、'legacy'。
方法一:改为:
union_data = union([data1, data2], data3);
也就是变成两个数组间的并集
方法二:使用unique取代union
% 求并集
unique_data = unique([data1, data2, data3]);
结果:
>> unique_data
unique_data =
1 2 3 4 5 6 7 8
在MATLAB中,unique函数用于从数组中提取唯一值,并且可以返回这些唯一值的排序或原始顺序。