Skip to content
Related Articles

Related Articles

numpy.ptp() in Python

View Discussion
Improve Article
Save Article
  • Last Updated : 23 Nov, 2021
View Discussion
Improve Article
Save Article

numpy.ptp()function plays an important role in statistics by finding out Range of given numbers. Range = max value – min value. 
 

Syntax : ndarray.ptp(arr, axis=None, out=None) 
Parameters : 
arr :input array. 
axis :axis along which we want the range value. Otherwise, it will consider arr to be flattened(works on all the axis). axis = 0 means along the column and axis = 1 means working along the row. 
out : [ndarray, optional]Different array in which we want to place the result. The array must have same dimensions as expected output. 
Return : Range of the array (a scalar value if axis is none) or array with range of values along specified axis. 
 

Code #1: Working 

Python




# Python Program illustrating
# numpy.ptp() method
   
import numpy as np
   
# 1D array
arr = [1, 2, 7, 20, np.nan]
print("arr : ", arr)
print("Range of arr : ", np.ptp(arr))
 
# 1D array
arr = [1, 2, 7, 10, 16]
print("arr : ", arr)
print("Range of arr : ", np.ptp(arr))


Output : 

arr :  [1, 2, 7, 20, nan]
Range of arr :  nan
arr :  [1, 2, 7, 10, 16]
Range of arr :  15

 Code #2 : 

Python




# Python Program illustrating
# numpy.ptp() method
 
import numpy as np
 
# 3D array
arr = [[14, 17, 12, 33, 44], 
       [15, 6, 27, 8, 19],
       [23, 2, 54, 1, 4,]]
print("\narr : \n", arr)
    
# Range of the flattened array
print("\nRange of arr, axis = None : ", np.ptp(arr))
    
# Range along the first axis
# axis 0 means vertical
print("Range of arr, axis = 0 : ", np.ptp(arr, axis = 0))
    
# Range along the second axis
# axis 1 means horizontal
print("Min of arr, axis = 1 : ", np.ptp(arr, axis = 1)) 


Output : 

arr : 
 [[14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4]]

Range of arr, axis = None :  53
Range of arr, axis = 0 :  [ 9 15 42 32 40]
Min of arr, axis = 1 :  [32 21 53]

 Code #3 : 

Python




# Python Program illustrating
# numpy.ptp() method
 
import numpy as np
 
arr1 = np.arange(5)
print("\nInitial arr1 : ", arr1)
  
# using out parameter
np.ptp(arr, axis = 0, out = arr1)
  
print("Changed arr1(having results) : ", arr1)


Output :  

Initial arr1 :  [0 1 2 3 4]
Changed arr1(having results) :  [ 9 15 42 32 40]

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!