在許多情況下,數據集可能不完整或被無效數據汙染。例如,傳感器可能無法記錄數據或記錄了無效值。的numpy.ma
模塊通過引入掩碼數組提供了解決此問題的便捷方法。掩碼數組是可能缺少條目或無效條目的數組。
numpy.MaskedArray.argsort()
函數返回索引的ndarray,該索引沿指定的軸對數組進行排序。屏蔽值已預先填充到fill_value。
用法: numpy.MaskedArray.argsort(axis=None, kind='quicksort', order=None, endwith=True, fill_value=None)
參數:
axis :[無,整數]沿其排序的軸。如果為None(默認),則使用扁平化的數組。
kind :[“快速排序”,“合並排序”,“堆排序”]排序算法。默認值為“快速排序”。
order :[列表,可選]當a是定義了字段的數組時,此參數指定要比較第一個,第二個等的字段。
endwith :[True,False,可選]缺失值(如果有的話)應被視為最大值(True)還是最小值(False)當數組在相同數據類型的極限處包含未屏蔽的值時,這些值的順序並且掩碼的值是不確定的。
fill_value :[var,可選]用於填充掩碼值的值。如果為None,則改為使用minimum_fill_value(self._data)的輸出。
Return :[ndarray,int]沿指定軸對a排序的索引數組。
代碼1:
# Python program explaining
# numpy.MaskedArray.argsort() method
# importing numpy as geek
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
# creating input array
in_arr = geek.array([4, 2, 3, -1, 5])
print ("Input array:", in_arr)
# Now we are creating a masked array
# by making third entry as invalid.
mask_arr = ma.masked_array(in_arr, mask =[0, 0, 1, 0, 0])
print ("Masked array:", mask_arr)
# applying MaskedArray.argsort methods to mask array
out_arr = mask_arr.argsort()
print ("output array of indices:", out_arr)
輸出:
Input array: [ 4 2 3 -1 5] Masked array: [4 2 -- -1 5] output array of indices: [3 1 0 4 2]
代碼2:
# Python program explaining
# numpy.MaskedArray.argsort() method
# importing numpy as geek
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
# creating input array
in_arr = geek.array([5, -5, 0, -10, 2])
print ("Input array:", in_arr)
# Now we are creating a masked array
# by making first third entry as invalid.
mask_arr = ma.masked_array(in_arr, mask =[1, 0, 1, 0, 0])
print ("Masked array:", mask_arr)
# applying MaskedArray.argminmethods to mask array
# and filling the masked location by 1
out_arr = mask_arr.argsort(fill_value = 1)
print ("output array of indices:", out_arr)
輸出:
Input array: [ 5 -5 0 -10 2] Masked array: [-- -5 -- -10 2] output array of indices: [3 1 0 2 4]
相關用法
- Python numpy.cov()用法及代碼示例
- Python numpy.copyto()用法及代碼示例
- Python Numpy MaskedArray.any()用法及代碼示例
- Python Numpy MaskedArray.var()用法及代碼示例
- Python Numpy MaskedArray.sum()用法及代碼示例
- Python numpy.issubsctype()用法及代碼示例
- Python Numpy MaskedArray.std()用法及代碼示例
- Python Numpy MaskedArray.mean()用法及代碼示例
- Python Numpy recarray.put()用法及代碼示例
- Python Numpy recarray.ptp()用法及代碼示例
- Python Numpy MaskedArray.all()用法及代碼示例
- Python Numpy MaskedArray.dot()用法及代碼示例
- Python Numpy recarray.all()用法及代碼示例
注:本文由純淨天空篩選整理自jana_sayantan大神的英文原創作品 Numpy MaskedArray.argsort() function | Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。