numpy.ndarray.sort#

method

ndarray.sort(axis=-1, kind=None, order=None)#

就地排序数组.有关完整文档,请参阅 numpy.sort .

参数:
int, optional

沿其排序的轴. 默认为 -1,表示沿最后一个轴排序.

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

排序算法. 默认为"quicksort".请注意,"stable"和"mergesort"都在底层使用 timsort,并且通常,实际实现会因数据类型而异."mergesort"选项保留用于向后兼容.

orderstr 或 list of str,可选

a 是具有字段定义的数组时,此参数指定首先比较哪些字段,其次比较哪些字段,依此类推.单个字段可以指定为字符串,并且不需要指定所有字段,但未指定的字段仍将按 dtype 中出现的顺序使用,以打破平局.

参见

numpy.sort

返回数组的排序副本.

numpy.argsort

间接排序.

numpy.lexsort

多个键上的间接稳定排序.

numpy.searchsorted

在排序数组中查找元素.

numpy.partition

部分排序.

注释

有关不同排序算法的注意事项,请参阅 numpy.sort .

示例

>>> import numpy as np
>>> a = np.array([[1,4], [3,1]])
>>> a.sort(axis=1)
>>> a
array([[1, 4],
       [1, 3]])
>>> a.sort(axis=0)
>>> a
array([[1, 3],
       [1, 4]])

使用 order 关键字来指定在对结构化数组进行排序时要使用的字段:

>>> a = np.array([('a', 2), ('c', 1)], dtype=[('x', 'S1'), ('y', int)])
>>> a.sort(order='y')
>>> a
array([(b'c', 1), (b'a', 2)],
      dtype=[('x', 'S1'), ('y', '<i8')])