The numpy.round_() is a mathematical function that rounds an array to the given number of decimals.
Syntax : numpy.round_(arr, decimals = 0, out = None)
Parameters :
array : [array_like] Input array.
decimal : [int, optional] Decimal places we want to round off.Default = 0. In case of -ve decimal, it specifies the n0. of positions to the left of the decimal point.
out : [optional] Output resulted array
Return :
An array with all array elements being rounded off, having same type as input.
Code #1 : Working
import numpy as np
in_array = [.5, 1.5, 2.5, 3.5, 4.5, 10.1]
print ("Input array : \n", in_array)
round_off_values = np.round_(in_array)
print ("\nRounded values : \n", round_off_values)
in_array = [.53, 1.54, .71]
print ("\nInput array : \n", in_array)
round_off_values = np.round_(in_array)
print ("\nRounded values : \n", round_off_values)
in_array = [.5538, 1.33354, .71445]
print ("\nInput array : \n", in_array)
round_off_values = np.round_(in_array, decimals = 3)
print ("\nRounded values : \n", round_off_values)
Output :
Input array : [0.5, 1.5, 2.5, 3.5, 4.5, 10.1] Rounded values : [ 0. 2. 2. 4. 4. 10.] Input array : [0.53, 1.54, 0.71] Rounded values : [ 1. 2. 1.] Input array : [0.5538, 1.33354, 0.71445] Rounded values : [ 0.554 1.334 0.714]
Code #2 : Working
import numpy as np
in_array = [1, 4, 7, 9, 12]
print ("Input array : \n", in_array)
round_off_values = np.round_(in_array)
print ("\nRounded values : \n", round_off_values)
in_array = [133, 344, 437, 449, 12]
print ("\nInput array : \n", in_array)
round_off_values = np.round_(in_array, decimals = -2)
print ("\nRounded values upto 2: \n", round_off_values)
in_array = [133, 344, 437, 449, 12]
print ("\nInput array : \n", in_array)
round_off_values = np.round_(in_array, decimals = -3)
print ("\nRounded values upto 3: \n", round_off_values)
Output :
Input array : [1, 4, 7, 9, 12] Rounded values : [ 1 4 7 9 12] Input array : [133, 344, 437, 449, 12] Rounded values upto 2: [100 300 400 400 0] Input array : [133, 344, 437, 449, 12] Rounded values upto 3: [0 0 0 0 0]
References :
//docs.scipy.org/doc/numpy-dev/reference/generated/numpy.round_.html#numpy.round_
.
NumPy Mathematics: Exercise-8 with Solution
Write a NumPy program to round array elements to the given number of decimals.
Sample Solution:-
Python Code:
import numpy as np x = np.round([1.45, 1.50, 1.55]) print(x) x = np.round([0.28, .50, .64], decimals=1) print(x) x = np.round([.5, 1.5, 2.5, 3.5, 4.5]) # rounds to nearest even value print(x)Sample Output:
[ 1. 2. 2.] [ 0.3 0.5 0.6] [ 0. 2. 2. 4. 4.]Pictorial Presentation:
Python-Numpy Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Write a NumPy program to calculate
the absolute value element-wise.
Next: Write a NumPy program to round elements of the array to the nearest integer.
Python: Tips of the Day
Given each iterable to construct a tuple by adding an index:
>>> a = ['Hello', 'world', '!'] >>> list(enumerate(a)) [(0, 'Hello'), (1, 'world'), (2, '!')]