Why doesn't array(a, dtype=single, copy=0) downcast a double array.
Travis Oliphant
oliphant at ee.byu.edu
Tue Oct 17 13:13:26 EDT 2006
Travis Oliphant wrote:
>Charles R Harris wrote:
>
>
>>It seems to me that since the behaviour when copy=0 is to make a copy
>>only if necessary, it should find it necessary and make the downcast.
>>After all, array(a, dtype=single, copy=1) does just that without
>>complaint. Some common code in linalg could be replaced if array and
>>asarray would do that operation.
>>
>>
>>
>Well, the fact that it makes the copy without raising an error is
>different behavior from Numeric and should be considered an unintended
>change.
>
>We definitely should make this consistent for copy=0 or copy=1. The
>only question, is do we raise the error in both cases or allow the
>conversion in both cases.
>
>The long-standing behavior is to raise the error on possible-loss
>conversion and so my opinion is that we should continue with that behavior.
>
>
>
But, on the other hand, it looks like numarray went the other direction
and allows a cast using the array call.
Thus
import numarray
a = numarray.array([1,2,3],'d')
numarray.array(a, 'f')
works
So, I'm willing to go with the numarray behavior in numpy.
-Travis
-------------------------------------------------------------------------
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