首页 > 编程语言 > 详细

python numpy argsort函数用法

时间:2015-08-10 23:46:18      阅读:775      评论:0      收藏:0      [点我收藏+]

numpy.argsort

numpy.argsort(aaxis=-1kind=‘quicksort‘order=None)[source]

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 asa that index data along the given axis in sorted order.

Parameters:

a : array_like

Array to sort.

axis : int or None, optional

Axis along which to sort. The default is -1 (the last axis). If None, the flattened array is used.

kind : {‘quicksort’, ‘mergesort’, ‘heapsort’}, optional

Sorting algorithm.

order : list, optional

When a is an array with fields defined, this argument specifies which fields to compare first, second, etc. Not all fields need be specified.

Returns:

index_array : ndarray, int

Array of indices that sort a along the specified axis. In other words, a[index_array] yields a sorted a.

See also

sort
Describes sorting algorithms used.
lexsort
Indirect stable sort with multiple keys.
ndarray.sort
Inplace sort.
argpartition
Indirect partial sort.

Notes

See sort for notes on the different sorting algorithms.

As of NumPy 1.4.0 argsort works with real/complex arrays containing nan values. The enhanced sort order is documented in sort.

Examples

One dimensional array:

>>>
>>> x = np.array([3, 1, 2])
>>> np.argsort(x)
array([1, 2, 0])

Two-dimensional array:

>>>
>>> x = np.array([[0, 3], [2, 2]])
>>> x
array([[0, 3],
       [2, 2]])
>>>
>>> np.argsort(x, axis=0)
array([[0, 1],
       [1, 0]])
>>>
>>> np.argsort(x, axis=1)
array([[0, 1],
       [0, 1]])

Sorting with keys:

>>>
>>> x = np.array([(1, 0), (0, 1)], dtype=[(‘x‘, ‘<i4‘), (‘y‘, ‘<i4‘)])
>>> x
array([(1, 0), (0, 1)],
      dtype=[(‘x‘, ‘<i4‘), (‘y‘, ‘<i4‘)])
>>>
>>> np.argsort(x, order=(‘x‘,‘y‘))
array([1, 0])
>>>
>>> np.argsort(x, order=(‘y‘,‘x‘))
array([0, 1])

python numpy argsort函数用法

原文:http://www.cnblogs.com/100thMountain/p/4719477.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!