numpy.unique(ar, return_index=False, return_inverse=False,return_counts=False, axis=None)
对于一维数组或者列表,unique函数去除其中重复的元素,并按元素由小到大返回一个新的无元素重复的元组或者列表。
- return_index:表示返回无重复新列表元素在输入列表中的索引值。
- return_inverse:表示返回输入列表在无重复新列表元素中的索引值。
- return_counts:返回个数,用于统计各个元素出现的次数
【例】查找数组的唯一元素。
a=np.array([1,1,2,3,3,4,4])
b=np.unique(a,return_counts=True)
print(b[0][list(b[1]).index(1)])#2
numpy.allclose(a, b, rtol=1e-05, atol=1e-08, equal_nan=False)
比较两个array是不是每一元素都相等,默认在1e-05的误差范围内。
- a,b:两个向量
- rtol : float 相对误差
- atol : float 绝对误差
- equal_nan : bool 是否匹配空nan值
- return 是否相近
np.allclose([1e10,1e-7], [1.00001e10,1e-8])
#False
np.allclose([1e10,1e-8], [1.00001e10,1e-9])
#True
np.allclose([1e10,1e-8], [1.0001e10,1e-9])
#False
np.allclose([1.0, np.nan], [1.0, np.nan])
#False
np.allclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
#True