文章目录
本文介绍一些比较少用,但是强大的功能。
import numpy as np
np.unique
我说得这个不常用指的是后面的一个参数,去重本身是常用的。
a = np.array([[1, 0, 0], [1, 0, 0], [2, 3, 4]])
执行np.unique():
np.unique(a)
其执行过程就是,把上面的数组进行拍扁,然后执行去重操作。结果如下:
array([0, 1, 2, 3, 4])
介绍一个参数,
return_inverse=True
其作用是标出原数组每个元素在unique后的数组中的位置。
a = np.array([[2, 1, 1], [1, 1, 1], [2, 3, 4]])
np.unique(a,return_inverse=True)
(array([1, 2, 3, 4]), array([1, 0, 0, 0, 0, 0, 1, 2, 3]))#可以发现,这个是用来重构数组的,也就是可逆的。
再介绍一个参数axis=0
:
np.unique(a,return_inverse=True,axis=0)#表示一行看作一个元素。那么由于我们的是两维,就不会拍扁了。
np.argsort
没想到还有这个哈哈,返回排序后的元素在原来的位置。
a=[1,3,2]
a=np.array(a)
np.argsort(a)
array([0, 2, 1], dtype=int64)