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, optional
要排序的轴。如果为 None(默认值),则使用展平的数组。
- kind{‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’}, optional
使用的排序算法。
- orderstr 或 str 列表, optional
当 a 是具有已定义字段的数组时,此参数指定首先、其次等要比较的字段。并非所有字段都需要指定。
- endwith{True, False}, optional
缺失值(如果有)是应被视为最大值(True)还是最小值(False)。当数组在数据类型的相同极端包含未掩码值时,这些值与掩码值的排序是未定义的。
- fill_valuescalar or None, optional
用于掩码值的内部值。如果
fill_value不为 None,它将覆盖endwith。- stablebool, optional
仅为与
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])