Assign NaN, get zero
Stefan van der Walt
stefan at sun.ac.za
Sat Nov 11 14:36:39 CST 2006
On Sat, Nov 11, 2006 at 10:40:22AM -0800, Keith Goodman wrote:
> I accidentally wrote a unit test using int32 instead of float64 and
> ran into this problem:
>
> >> x = M.matrix([[1, 2, 3]])
> >> x[0,1] = M.nan
> >> x
> matrix([[1, 0, 3]]) <--- Got 0 instead of NaN
>
> But this, of course, works:
>
> >> x = M.matrix([[1.0, 2.0, 3.0]])
> >> x[0,1] = M.nan
> >> x
> matrix([[ 1. , nan, 3. ]])
>
> Is returning a 0 instead of NaN the expected behavior?
NaN (or inf) is a floating point number, so seeing a zero in integer
representation seems correct:
In [2]: int(N.nan)
Out[2]: 0L
Cheers
Stéfan
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
More information about the Numpy-discussion
mailing list