[Numpy-discussion] conditionals not fully implemented?
Chris Burns
cburns1 at swarthmore.edu
Mon Feb 2 15:57:02 EST 2004
Hello.
I've graduated from numeric to numarray and been enjoying all the nifty
features, but I'm puzzled by the following behaviour when using conditionals
in a function like nonzero():
>>> import numarray
>>> print numarray.__version__
0.8
>>> x = numarray.arange(10)
>>> numarray.nonzero(x < 5)
(array([0, 1, 2, 3, 4]),)
So far so good
>>> numarray.nonzero(x < 5 and x > 2)
(array([3, 4, 5, 6, 7, 8, 9]),)
>>> numarray.nonzero((x < 5 and x > 2))
(array([3, 4, 5, 6, 7, 8, 9]),)
>>> numarray.nonzero( 2 < x < 5 )
(array([0, 1, 2, 3, 4]),)
>>> numarray.nonzero( (x < 5) * (x > 2) )
(array([3, 4]),)
So, only this last construction let's me get what I want. Am I doing something
wrong or is the use of 'and' and 'or' not implemented for conditionals?
Thanks.
Chris
--
Chris Burns
Visiting Assistant Professor
Dept. of physics and astronomy, Swarthmore College
cburns1 at swarthmore.edu http://hven.swarthmore.edu/~burns
More information about the NumPy-Discussion
mailing list