numpyunique函数怎么使用
更新时间:2023-11-30numpy.unique()函数概述
NumPy的unique()函数用于返回给定数组中的唯一元素。 它返回唯一的元素以及唯一元素的数量。
用法如下:
np.unique(arr, return_index=False, return_inverse=False, return_counts=False, axis=None)
唯一参数解释:
- arr:输入数组,如果不是1-D,则会展开至1-D,返回一个有序的输出数组。
- return_index:如果为True,则返回输入数组中唯一元素的下标。
- return_inverse:如果为True,则返回输入数组中每个元素在输出数组中的下标。
- return_counts:如果为True,则返回输入数组中每个唯一元素的都出现了几次。
- axis:用于操作的轴,默认为None。 如果不为None,则沿该轴的元素被展平后,元素会被视为独立的。
用例1:返回排序后的唯一元素
import numpy as np arr = np.array([1, 2, 5, 2, 3, 1, 4, 5]) print(np.unique(arr))
代码解释:输入数组中的重复元素被过滤,并返回每个唯一元素按顺序排列的数组。
输出为:
[1 2 3 4 5]
用例2:返回唯一的元素和它们的数量
import numpy as np arr = np.array([1, 2, 5, 2, 3, 1, 4, 5]) unique, counts = np.unique(arr, return_counts=True) print(np.asarray((unique, counts)).T)
代码解释:返回唯一的元素以及元素的数量(这些数量通常称为频率)。
输出为:
[[1 2] [2 2] [3 1] [4 1] [5 2]]
用例3:去除输入数组中的重复元素
import numpy as np arr = np.array([1, 2, 5, 2, 3, 1, 4, 5]) print(np.unique(arr, return_index=True)[1])
代码解释:返回输入数组中唯一元素的下标。
输出为:
[0 1 4 6 2]
总结
numpy.unique()函数是NumPy中的一个有用函数,它用于查找给定数组中的唯一元素。返回唯一元素的数量和唯一元素的值本身。 这个函数允许访问到输入数组的每个元素在输出数组中的位置,以及每个唯一元素在输入数组中出现了几次。 可以使用NumPy的unique()函数在处理有重复元素的数据时有用。