numpy ndarray.sort 用法及代码示例

用法:
ndarray.sort(axis=-1, kind=None, order=None)
就地排序数组。参考numpy.sort有关完整的文档。

描述
参数 axis: : int, 可选参数

要排序的轴。默认值为-1,表示沿最后一个轴排序。
kind: : {‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’}, 可选参数

排序算法。默认值为‘quicksort’。请注意,‘stable’和‘mergesort’都使用timsort,通常情况下,实际实现会随数据类型而变化。保留‘mergesort’选项是为了向后兼容。

在1.15.0版中进行了更改:‘stable’选项已添加。
order: : str 或 list of str, 可选参数

当a是定义了字段的数组时,此参数指定要比较的字段的第一个,第二个等。单个字段可以指定为字符串,并且不需要指定所有字段,但是仍将使用未指定的字段。他们以dtype出现的顺序来打破关系。

例子:

>>> 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')])

发表回复

登录... 后才能评论