MATLAB如何对数组元素去重(得到集合)

2024-11-01 23:03:47

介绍MATLAB中的unique和uniquetol函数,它们可以根据有重复元素的列表构造集合。

工具/原料

MATLAB 2016a

unique函数用法

1、对于列表A,使用unique(A)返回由A中的不重复元素构成的列表,相当于列表转集合。

MATLAB如何对数组元素去重(得到集合)

3、对于table表格,unique函数会将每一行看作整体,返回不含有重复项的表格。

MATLAB如何对数组元素去重(得到集合)

5、unique还可以带有参数'stable'或者'sorted',表示求出的集合列表是否排序。'stable'表示按照原有相对顺序,'sorted'表示对得到的集合排序。

MATLAB如何对数组元素去重(得到集合)

uniquetol函数用法

1、uniquetol可以合并大小相差小于某特定撕良滤儆值的数据。uniquetol(A, tol)会按照abs(u-v) <= tol*max(abs(A(:)))来判断A中的元素u和v算不罪拈藉麝算“同一个”元素。如图,unique(A, 0.01)将会合并1.999和2.000

MATLAB如何对数组元素去重(得到集合)

3、uniquetol参数较多,与unique不同,没有单个的'rows'参数。需要配合使用'ByRows',true来达到unique中'rows'的效果,即将每一行视为整体。

MATLAB如何对数组元素去重(得到集合)

4、uniquetol还有参数'OutputAllIndices',true使用此参数,如图,ia列表将是一个元胞数组,其中一个元胞是一个重复元素的所有下标。

MATLAB如何对数组元素去重(得到集合)
猜你喜欢