# [Numpy-discussion] logic problem

Mon Jan 18 14:52:30 EST 2010

```18/01/10 @ 13:18 (-0600), thus spake Warren Weckesser:
> > 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.

Exactly.

> 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

Very clever. Thanks a lot!

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

```