numpy.around
-
numpy.around(a, decimals=0, out=None)[source] -
Округляет значения до заданной точности.
Параметры: -
a : array_like -
Входные данные.
-
decimals : int, optional -
Количество знаков после запятой для округления (по умолчанию: 0). Если decimals отрицательно, оно указывает на количество позиций слева от десятичной точки.
-
out : ndarray, optional -
Альтернативный массив вывода, в котором следует разместить результат. Он должен иметь такую же форму, как ожидаемый результат, но тип значений вывода будет преобразован при необходимости. Подробнее см.
doc.ufuncs(раздел «Аргументы вывода»).
Возвращает: -
rounded_array : ndarray -
Массив того же типа, что и
a, содержащий округленные значения. Еслиoutне был указан, создается новый массив. Возвращается ссылка на результат.Вещественная и мнимая части комплексных чисел округляются по отдельности. Результатом округления числа с плавающей точкой является число с плавающей точкой.
Примечания
Для значений, находящихся ровно посередине между округленными десятичными значениями, NumPy округляет до ближайшего четного значения. Таким образом, 1,5 и 2,5 округляются до 2,0, -0,5 и 0,5 округляются до 0,0 и т. д. Результаты также могут быть неожиданными из-за неточного представления десятичных дробей в стандарте IEEE с плавающей точкой [1] и ошибок, возникающих при масштабировании на степени десяти.
Ссылки
[1] (1, 2) “Lecture Notes on the Status of IEEE 754”, William Kahan, https://people.eecs.berkeley.edu/~wkahan/ieee754status/IEEE754.PDF [2] “How Futile are Mindless Assessments of Roundoff in Floating-Point Computation?”, William Kahan, https://people.eecs.berkeley.edu/~wkahan/Mindless.pdf Примеры
>>> np.around([0.37, 1.64]) array([ 0., 2.]) >>> np.around([0.37, 1.64], decimals=1) array([ 0.4, 1.6]) >>> np.around([.5, 1.5, 2.5, 3.5, 4.5]) # rounds to nearest even value array([ 0., 2., 2., 4., 4.]) >>> np.around([1,2,3,11], decimals=1) # ndarray of ints is returned array([ 1, 2, 3, 11]) >>> np.around([1,2,3,11], decimals=-1) array([ 0, 0, 0, 10])
-
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.16.1/reference/generated/numpy.around.html