numpy.ndarray.sort#

方法

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

原地排序陣列。完整文件請參閱 numpy.sort

參數:
axisint,選用

排序軸線。預設值為 -1,表示沿最後一個軸線排序。

kind{‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’},選用

排序演算法。預設值為 ‘quicksort’。請注意,‘stable’ 和 ‘mergesort’ 底層皆使用 timsort,且通常實際實作會因資料類型而異。「mergesort」選項為了向後相容性而保留。

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