>>> a = np.arange(12).reshape(3,4)
>>> b1 = np.array([False,True,True]) # 对应a的第一维
>>> b2 = np.array([True,False,True,False]) # 对应a的第二维
>>>
>>> a[b1,:] # 按第一维来进行判断选择
array([[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
>>>
>>> a[b1] # same thing
array([[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
>>>
>>> a[:,b2] # 按第二维进行判断选择
array([[ 0, 2],
[ 4, 6],
[ 8, 10]])
>>>
>>> a[b1,b2] # 行列同时进行
array([ 4, 10])
原文链接