> 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@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion