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
_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to