我有以下numpy數組: (nx1)的真值表,以及(nxk)的矩陣,其中n是5並且k在此示例中是2。使用邏輯索引從數組中提取向量
btable = np.array([[True],[False],[False],[True],[True]])
bb=np.array([[1.842,4.607],[5.659,4.799],[6.352,3.290],[2.904,4.612],[3.231,4.939]])
我想根據btable中的索引值提取bb中的向量。
我試圖choicebb=bb[btable==True]
這讓我的結果
[ 1.84207953 2.90401653 3.23197916]
choicebb=bb[btable]
讓我相同的結果也是如此。
我想反而是
[1.842,4.607]
[2.904,4.612]
[3.231,4.939]
我也試過
choicebb=bb[btable==True,:]
但後來我會得到
---> 13 choicebb=bb[btable==True,:]
14 print(choicebb)
IndexError: too many indices for array
這可以在MATLAB輕鬆完成與choicebb=bb(btable,:);
'btable'必須是'np.array([True,False,False,True,True])''。 – Serenity
我使用類似'matches =(idx == i)'的命令生成它,其中idx是一個kx1數組,我是我的匹配標準。 – user2118915