布尔索引n-D Numpy数组

时间:2015-06-22 14:30:25

标签: python numpy

我无法将bool值应用于给定数据:

import numpy as np

bool_values = np.array([False, False, True, False, True])
data = np.array([[11.0, 22.0, 0.0, 44.0, 55.0],
                 [10.0, 20.0, 30.0, 40.0, 50.0]])

expected_answer = [[0,55], [30,50]]

我试过它:

expected_answer = data[bool_values]

1 个答案:

答案 0 :(得分:1)

我想你想这样做:

In [28]:
bool_values = np.array([False, False, True, False, True])
data = np.array([[11.0, 22.0, 0.0, 44.0, 55.0],
 [10.0, 20.0, 30.0, 40.0, 50.0]])
data[:,bool_values]

Out[28]:
array([[  0.,  55.],
       [ 30.,  50.]])

以上将掩码应用于每一行