2
要對元素求和,我們有二元運算符np.add
,而且還有np.sum
處理多個元素。同樣,我們有np.multiply
和np.product
做乘法。「numpy.logical_or」的相應多元素操作符版本是什麼?
但是對於np.logical_or
,相應的多元素運算符是什麼?假設我有以下陣列:
In [29]: a
Out[29]:
array([[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]])
我想有一個方法像np.logical_or(a, axis=0)
,使我能得到這樣的一個數組[ True, True, True]
。現在,我能想出的唯一辦法是:
In [31]: a.sum(0).astype(bool)
Out[31]: array([ True, True, True], dtype=bool)
但是,這並不是一個好辦法,因爲它會在陣列喜歡失敗:
array([[-1, -1],
[ 1, 1]])
'sum'和'prod'實現爲調用'add.reduce'和'multiply.reduce',和所有二進制ufuncs有'.reduce'方法,所以即使'any'和'所有'都沒有明確定義,它們很容易生成。 – Jaime
@Jaime太棒了! thx很多〜 – zhangxaochen