首页 > 代码库 > python中argsort的使用

python中argsort的使用

argsort是模块numpy中的函数,用于将数组里的元素进行排序。注意这个地方返回的是索引

argsort(a, axis=-1, kind=‘quicksort‘, order=None)
    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`.
     
    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中argsort的使用