[Numpy-discussion] Round away from zero (towards +/- infinity)

T J tjhnson at gmail.com
Thu Oct 2 19:08:56 EDT 2014


Any bites on this?

On Wed, Sep 24, 2014 at 12:23 PM, T J <tjhnson at gmail.com> wrote:

> Is there a ufunc for rounding away from zero? Or do I need to do
>
>     x2 = sign(x) * ceil(abs(x))
>
> whenever I want to round away from zero? Maybe the following is better?
>
>     x_ceil = ceil(x)
>     x_floor = floor(x)
>     x2 = where(x >= 0, x_ceil, x_floor)
>
> Python's round function goes away from zero, so I am looking for the NumPy
> equivalent (and using vectorize() seems undesirable). In this sense, it
> seems that having a ufunc for this type of rounding could be helpful.
>
> Aside: Is there interest in a more general around() that allows users to
> specify alternative tie-breaking rules, with the default staying 'round
> half to nearest even'? [1]
>
> Also, what is the difference between NumPy's fix() and trunc() functions?
> It seems like they achieve the same goal. trunc() was added in 1.3.0. So is
> fix() just legacy?
>
> ---
> [1]
> http://stackoverflow.com/questions/16000574/tie-breaking-of-round-with-numpy
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20141002/1b7cd01f/attachment.html>


More information about the NumPy-Discussion mailing list