argsort函數是Numpy子產品中的函數:
>>> import numpy
>>> help(numpy.argsort)
Help on function argsort in module numpy.core.fromnumeric:
argsort(a, axis=-, kind='quicksort', order=None)
Returns the indices that would sort an array.
Perform an indirect sort along the given axis using the algorithm specified
by the `kind` keyword. It returns an array of indices of the same shape as
`a` that index data along the given axis in sorted order.
- 從中可以看出argsort函數傳回的是數組值從小到大的索引值
Examples:
One dimensional array:一維數組
>>> x = np.array([, , ])
>>> np.argsort(x)
array([, , ])
Two-dimensional array:二維數組
>>> x = np.array([[, ], [, ]])
>>> x
array([[, ],
[, ]])
>>> np.argsort(x, axis=) #按列排序
array([[, ],
[, ]])
>>> np.argsort(x, axis=) #按行排序
array([[, ],
[, ]])
Examples:
>>> x = np.array([, , ])
>>> np.argsort(x) #按升序排列
array([, , ])
>>> np.argsort(-x) #按降序排列
array([, , ])
>>> x[np.argsort(x)] #通過索引值排序後的數組
array([, , ])
>>> x[np.argsort(-x)]
array([, , ])
另一種方式實作按降序排序:
>>> a = x[np.argsort(x)]
>>> a
array([, , ])
>>> a[::-]
array([, , ])