Функция round
Функция round выполняет округление чисел в массиве
NumPy до заданного числа знаков после запятой. Первым
параметром функция принимает массив чисел, вторым - количество
десятичных знаков. По умолчанию округление происходит до
ближайшего целого.
Синтаксис
np.round(arr, [decimals])
Пример
Округлим числа в массиве до ближайшего целого:
import numpy as np
arr = np.array([1.3, 2.7, 3.5, 4.1])
res = np.round(arr)
print(res)
Результат выполнения кода:
[1. 3. 4. 4.]
Обратите внимание: число 3.5 округлилось до 4.,
так как в NumPy используется банковское округление до
ближайшего чётного при значениях ровно посередине.
Пример
Округлим элементы массива до одного знака после запятой:
import numpy as np
arr = np.array([1.23, 2.78, 3.55, 4.61])
res = np.round(arr, decimals=1)
print(res)
Результат выполнения кода:
[1.2 2.8 3.5 4.6]
Пример
Округлим двумерный массив до двух знаков после запятой:
import numpy as np
arr = np.array([[1.234, 2.345], [3.456, 4.567]])
res = np.round(arr, decimals=2)
print(res)
Результат выполнения кода:
[[1.23 2.35]
[3.46 4.57]]
Пример
Округлим отрицательные числа в массиве:
import numpy as np
arr = np.array([-1.3, -2.7, -3.5, -4.1])
res = np.round(arr)
print(res)
Результат выполнения кода:
[-1. -3. -4. -4.]
Отрицательные числа округляются по тем же правилам:
-3.5 округляется до -4., так как -4 является
чётным числом.
Пример
Округлим числа до десятков (отрицательное количество знаков):
import numpy as np
arr = np.array([123, 256, 789, 341])
res = np.round(arr, decimals=-1)
print(res)
Результат выполнения кода:
[120. 260. 790. 340.]
При отрицательном значении параметра decimals округление
происходит до десятков (-1), сотен (-2) и так далее.
Пример
Применим функцию round через метод массива:
import numpy as np
arr = np.array([1.234, 2.345, 3.456])
res = arr.round(decimals=2)
print(res)
Результат выполнения кода:
[1.23 2.35 3.46]