zoukankan      html  css  js  c++  java
  • python numpy argsort函数用法

    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])
    作者:100thMountain
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    背景透明度IE兼容性代码
    酷站收藏
    洛谷P1142 轰炸 数学
    洛谷P1282 多米诺骨牌
    洛谷P1247 取火柴游戏 数学题 博弈论
    洛谷P1135 奇怪的电梯 广搜
    洛谷P1077 摆花 动态规划
    洛谷P1161 开灯 数学
    洛谷P1154 奶牛分厩 数学
    洛谷P2147 [SDOI2008]Cave 洞穴勘测 Link-Cut Tree LCT
  • 原文地址:https://www.cnblogs.com/100thMountain/p/4719477.html
Copyright © 2011-2022 走看看