3
我有一個複雜的計算,我期望結果是一個數組,其中的值按排序順序排列。但是,由於某些關鍵點的數值錯誤,某些結果值是錯誤的。我想掩蓋這些值。我應該怎麼做?在numpy中不按排序順序的掩碼值
這裏是一個等價的函數,但假設值從高到低排序,而外人總是大於預期值。我想知道是否有一個更簡單,更有效的方法來做到這一點。
def maskoutsiders(a):
mask = numpy.zeros(len(a))
lastval = a[0]
for i in range(1, len(a)):
if a[i] > lastval:
mask[i] = 1
else:
lastval = a[i]
return ma.masked_array(a, mask=mask)
所以,從索引0開始,你想挑選標記嚴格增長子序列的指標的數組(並掩蓋其他指標)?例如。 '[3,1,2,4,5]'會是'[真,假,假,真,真]'? – 2015-01-20 20:39:17
是的!此外,只有一些不好的值,但是這些不好的值可能在2或3的組中。另外,在ma中,1被屏蔽,0被屏蔽。 – 2015-01-20 20:42:44