numpy.ma.MaskedArray.argsort#

方法

ma.MaskedArray.argsort(axis=<no value>, kind=None, order=None, endwith=True, fill_value=None, *, stable=False)[原始碼]#

傳回一個索引的 ndarray,這些索引沿著指定的軸對陣列進行排序。遮罩值會預先填入 fill_value

參數:
axisint,選用

要沿著排序的軸。如果為 None,預設會使用展平的陣列。

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

使用的排序演算法。

orderlist,選用

a 是具有定義欄位的陣列時,此引數指定首先、其次等要比較的欄位。並非所有欄位都需要指定。

endwith{True, False},選用

遺失值(如果有的話)應視為最大值 (True) 還是最小值 (False)。當陣列在資料類型極端值包含未遮罩值時,這些值和遮罩值的排序是未定義的。

fill_value純量或 None,選用

內部用於遮罩值的值。如果 fill_value 不是 None,它會取代 endwith

stablebool,選用

僅為了與 np.argsort 相容。忽略。

傳回值:
index_arrayndarray,int

沿著指定軸對 a 進行排序的索引陣列。換句話說,a[index_array] 會產生排序後的 a

另請參閱

ma.MaskedArray.sort

描述使用的排序演算法。

lexsort

使用多個鍵的間接穩定排序。

numpy.ndarray.sort

原地排序。

註解

有關不同排序演算法的註解,請參閱 sort

範例

>>> import numpy as np
>>> a = np.ma.array([3,2,1], mask=[False, False, True])
>>> a
masked_array(data=[3, 2, --],
             mask=[False, False,  True],
       fill_value=999999)
>>> a.argsort()
array([1, 0, 2])