On Mon, Jan 18, 2010 at 2:18 PM, Warren Weckesser
<[email protected]> wrote:
> Ernest Adrogué wrote:
>> Hi,
>>
>> This is hard to explain. In this code:
>>
>> reduce(np.logical_or, [m1 & m2, m1 & m3, m2 & m3])
>>
>> where m1, m2 and m3 are boolean arrays, I'm trying to figure
>> out an expression that works with an arbitrary number of
>> arrays, not just 3. Any idea??
>>
>>
>
> If I understand the problem correctly, you want the result to be True
> whenever any pair of the corresponding elements of the arrays are True.
>
> This could work:
>
> reduce(np.add, [m.astype(int) for m in mlist]) > 1
>
> where mlist is a list of the boolean array (e.g. mlist = [m1, m2, m3] in
> your example).

much nicer than what I came up with. Does iterator instead of
intermediate list work (same for my list comprehension)?

 reduce(np.add, (m.astype(int) for m in mlist)) > 1

Josef

>
> Warren
>> Bye.
>> _______________________________________________
>> NumPy-Discussion mailing list
>> [email protected]
>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>>
>
> _______________________________________________
> NumPy-Discussion mailing list
> [email protected]
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to