[Numpy-discussion] Difficulty using special types like timedelta and Decimal
Charles R Harris
charlesr.harris at gmail.com
Fri Sep 16 12:18:57 EDT 2011
On Fri, Sep 16, 2011 at 9:11 AM, Benjamin Root <ben.root at ou.edu> wrote:
> Certain numerical types in Python that support accurate fractional
> calculations such as timedelta and Decimal do not allow for multiplication
> or division by a floating point number, but do allow for use with an
> integer. This can cause difficulties with some functions such as
> np.gradient() which has a division by 2.0 as part of the algorithm.
> My question is: with Py3k's division always resulting in a floating point
> result regardless of the denominator's type, would it be possible to change
> some of these common denominators over to integers in order to better
> facilitate support for these special types?
> Obviously, I don't think we could expect full support of these types, but
> maybe a mechanism could be developed to better handle these?
Timedelta seems to work in master:
In : timedelta64(5)
In : timedelta64(5)/2.0
In : timedelta64(5)/2
I think making the change to 2 is a reasonable thing to do, but you should
from __future__ import division
at the beginning of the module containing gradient and make sure everything
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion