Spec-Zone.ru › NumPy 1.12

numpy.around

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

Округление до заданного числа десятичных знаков.

Параметры:

a : array_like

Входные данные.

decimals : int, необязательно

Количество десятичных знаков для округления (по умолчанию: 0). Если decimals отрицательное, оно определяет количество позиций слева от десятичной точки.

out : ndarray, необязательно

Альтернативный массив вывода, в который следует поместить результат. Он должен иметь ту же форму, что и ожидаемый результат, но тип значений вывода будет преобразован при необходимости. Смотрите doc.ufuncs (Раздел «Аргументы вывода») для подробностей.

Возвращает:

rounded_array : ndarray

Массив того же типа, что и a, содержащий округленные значения. Если out не был указан, создается новый массив. Возвращается ссылка на результат.

Вещественная и мнимая части комплексных чисел округляются по отдельности. Результат округления числа с плавающей точкой — число с плавающей точкой.

См. также

ndarray.round
эквивалентный метод

ceil, fix, floor, rint, trunc

Примечания

Для значений, находящихся ровно посередине между округленными значениями, NumPy округляет до ближайшего четного значения. Таким образом, 1,5 и 2,5 округляются до 2,0, -0,5 и 0,5 округляются до 0,0 и т. д. Результаты также могут быть неожиданными из-за неточного представления десятичных дробей в стандарте IEEE с плавающей точкой [R9] и ошибок, возникающих при масштабировании на степени десяти.

Ссылки

[R9] (1, 2) «Заметки об актуальном состоянии IEEE 754», Уильям Кахан, http://www.cs.berkeley.edu/~wkahan/ieee754status/IEEE754.PDF
[R10] «Как бесполезны бессмысленные оценки округления в вычислениях с плавающей точкой?», Уильям Кахан, http://www.cs.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])

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.12.0/reference/generated/numpy.around.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API