📅  最后修改于: 2023-12-03 14:46:21.710000             🧑  作者: Mango
Numpy是用于科学计算的Python库,提供了大量的数学函数和数组支持。其中,np.unique()方法在数组操作中非常常用,该方法可以返回输入数组中的唯一元素,并按照从小到大的顺序排列。
numpy.unique(arr, return_index=False, return_inverse=False,
return_counts=False, axis=None)
import numpy as np
arr = np.array([1, 2, 2, 3, 4, 5, 5, 5])
unique_arr = np.unique(arr)
print(unique_arr) # [1 2 3 4 5]
index_arr = np.unique(arr, return_index=True)
print(index_arr[0]) # [1 2 3 4 5]
print(index_arr[1]) # [0 1 3 4 5]
inverse_arr = np.unique(arr, return_inverse=True)
print(inverse_arr[0]) # [1 2 3 4 5]
print(inverse_arr[1]) # [0 1 1 2 3 4 4 4]
counts_arr = np.unique(arr, return_counts=True)
print(counts_arr[0]) # [1 2 3 4 5]
print(counts_arr[1]) # [1 2 1 1 3]
arr_2d = np.array([[1, 2, 3], [4, 5, 6], [2, 5, 8]])
unique_arr_2d = np.unique(arr_2d, axis=0)
print(unique_arr_2d) # [[1 2 3][2 5 8][4 5 6]]
如上述示例所示,np.unique()方法可以灵活应用于不同的情况下,如数组元素不重复、有重复、带索引值、带频次、二维数组等。同时,通过设定不同的参数值还可以统计数组中的有关信息,例如唯一元素的个数、下标位置等。