當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Numpy MaskedArray.argsort()用法及代碼示例


在許多情況下,數據集可能不完整或被無效數據汙染。例如,傳感器可能無法記錄數據或記錄了無效值。的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]


相關用法


注:本文由純淨天空篩選整理自jana_sayantan大神的英文原創作品 Numpy MaskedArray.argsort() function | Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。