[Numpy-discussion] The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

Rick Muller rpmuller at gmail.com
Wed Oct 27 18:31:17 EDT 2010


Robert, Zachary,

Thanks for the quick help. I tried to write a little self-contained example
of the crash, but it wasn't working. (I'm sure you've already figured out
how this ends.) When I tracked down why it wasn't working, I found my bug.

Turned out that cut, which I assumed was just a small scalar value, was
actually a matrix, since I was passing in the wrong number of arguments to
the function. Hence the confusing error.

Thanks again, and sorry for wasting your time.

Rick


On Wed, Oct 27, 2010 at 3:04 PM, Zachary Pincus <zachary.pincus at yale.edu>wrote:

> > Help! I'm having a problem in searching through the *elements* if a
> > 2d array. I have a loop over a numpy array:
> >
> >     n,m = G.shape
> >     print n,m
> >     for i in xrange(n):
> >         for j in xrange(m):
> >             print type(G), type(G[i,j]), type(float(G[i,j]))
> >             g = float(abs(G[i,j]))
> >             if g < cut:
> >                 print i,j,G[i,j]
> >
> > However, I'm getting the error message:
> >
> >     The truth value of an array with more than one element is
> > ambiguous. Use a.any() or a.all()
> >
> > despite the fact that I'm not computing a truth value of an array.
> > I'd like to just compare to G[i,j] or abs(G[i,j]), which should be a
> > *single* value, and *not* an array. I even call 'float' here to make
> > sure that I cast this to a normal python float. But I still get this
> > error message.
>
> Which line is raising the error?
> My guess is it's the only truth-value testing line: "if g < cut". (I'm
> not sure what else could error here in that way...) It looks like g is
> probably a scalar, but your code isn't showing where cut comes from,
> nor have you printed out it's type... is it an array?
>
> Zach
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>



-- 
Rick Muller
rpmuller at gmail.com
505-750-7557
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20101027/5d61b0ac/attachment.html>


More information about the NumPy-Discussion mailing list