我们可以先这样做
屏蔽掉
条件所在的值
不
按住,然后使用
argmax
,以计算第二列为最大值的索引。
因此,我们使用以下方法进行遮罩:
data_masked = np.ma.masked_where((data[:,0] < 5) | (data[:,0] > 9), data[:,1])
所以这里的条件是
对面的
筛选条件的:所有行
data[:0] < 5
或
data[:0] > 9
都被遮住了。请注意,我们已经对第二列进行了投影。中间结果为:
>>> np.ma.masked_where((data[:,0] < 5) | (data[:,0] > 9), data[:,1])
masked_array(data=[--, --, --, --, --, 0.05736691, 0.54063927, 0.3045981,
0.13873822, --, --],
mask=[ True, True, True, True, True, False, False, False,
False, True, True],
fill_value=1e+20)
然后我们用以下公式计算指数:
index = np.argmax(b)