(仅介绍最常用部分)

作用:unique函数去除其中重复的元素,并按元素由大到小返回一个新的无元素重复的元组或者列表

eg:

此处借鉴了之前几个博主的例子

a = np.unique(A)

import numpy as np
A = [1, 2, 2, 5, 3, 4, 3]
a = np.unique(A)
B= (1, 2, 2, 5, 3, 4, 3)#其中2和3重复了
b= np.unique(B)
C= ['fgfh','asd','fgfh','asdfds','wrh']
c= np.unique(C)
print(a)
print(b)
print(c)
​
#  输出为 
#[1 2 3 4 5]
#[1 2 3 4 5]
#['asd' 'asdfds' 'fgfh' 'wrh']

eg2:

c,s=np.unique(b,return_index=True)

a, s= np.unique(A, return_index=True)
print(a)
print(s)
# 运行结果
# [1 2 3 4 5]
# [0 1 4 5 3]
​
​
>>> a = np.array([[1, 0, 0], [1, 0, 0], [2, 3, 4]])
>>> np.unique(a, axis=0)
array([[1, 0, 0], [2, 3, 4]])
​

eg3:

a, s,p = np.unique(A, return_index=True, return_inverse=True)

return_inverse=True 表示返回旧列表元素在新列表中的位置,并以列表形式储存在p中

a, s,p = np.unique(A, return_index=True, return_inverse=True)
print(a)
print(s)
print(p)
# 运行结果
# [1 2 3 4 5]
# [0 1 4 5 3]
# [0 1 1 4 2 3 2]
​
​
>>> a = np.array(['a', 'b', 'b', 'c', 'a'])
>>> u, indices = np.unique(a, return_index=True)
>>> u
array(['a', 'b', 'c'], dtype='<U1')
>>> indices
array([0, 1, 3])
>>> a[indices]
array(['a', 'b', 'c'], dtype='<U1')

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐