我有兩個NumPy的陣列,例如:如何使用另一個數組的值過濾numpy數組?
a = [1,2,3,4,5]
和濾波器陣列,例如:
f = [False, True, False, False, True]
len(a) == len(f)
我怎樣才能只值一個新numpy的陣列中,其中相同指數f
是真的嗎?在我的情況下:[2, 5]
。
根據所接受的溶液(具有不同的值):
>>> a = numpy.array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>> b = numpy.array([True, False, True, False, True, False, True, False, True, False])
>>> a[b]
array([1, 3, 5, 7, 9])
它看起來像b是一個不是數組的列表,b必須是一個布爾數組。嘗試'b = np.asarray(b,'bool')' – 2012-02-15 16:13:06