numpy.around

numpy.around(a, decimals=0, out=None)

Функция numpy.around() выполняет равномерное (банковское) округление до указанной позиции к ближайшему четному числу. Реальная и мнимая часть комплексных чисел округляется отдельно.

Параметры:
a - число или подобный массиву объект
Число или последовательность чисел.
decimals - целое число (необязательный аргумент)
Указывает количество знаков после десятичной точки (по умолчанию decimals = 0). Если decimals < 0, то его значение указывает на количество знаков слева от десятичной точки.
out - массив Numpy (необязательный аргумент)
Указывает массив в который будет помещен результат работы функции. Данный массив должен иметь форму идентичную массиву с результатом работы функции. Подробнее о данном параметре смотрите на странице универсальные функции в разделе out.
Возвращает:
результат - массив NumPy
Массив с округленными значениями входного массива a. Тип результирующего массива совпадает с типом входного массива. Если параметр out не указан, то будет создан новый массив.
Смотрите так же: rint, fix, trunc

Примеры

>>> import numpy as np
>>> 
>>> np.around([0.1, 0.9, 1.2, 1.8])
array([0., 1., 1., 2.])
>>> 
>>> np.around([0.11, 0.19, 1.21, 1.28], decimals = 1)
array([0.1, 0.2, 1.2, 1.3])
>>> 
>>> #  округление чисел заканчивающихся на цифру 5 выполняется
... #  до ближайшего четного числа:
... np.around([0.5, 0.51])
array([0., 1.])
>>> 
>>> np.around([0.45, 0.46], decimals = 1)
array([0.4, 0.5])
>>>
>>> x = np.arange(-3, 4) + 0.5
>>> x
array([-2.5, -1.5, -0.5,  0.5,  1.5,  2.5,  3.5])
>>> 
>>> np.around(x)
array([-2., -2., -0.,  0.,  2.,  2.,  4.])
>>> 
>>> 
>>> #  округление всегда происходит до ближайшего четного числа:
... np.around([0.1, 11.1, 111,1], decimals = -1)
array([  0.,  10., 110.,   0.])
>>> 
>>> np.around([11, 19, 111, 119], decimals = -1)
array([ 10,  20, 110, 120])