numpy.nanpercentile() in Python

07 Jul, 2022
numpy.nanpercentile()function used to compute the nth percentile of the given data (array elements) along the specified axis ang ignores nan values.
Syntax : 
numpy.nanpercentile(arr, q, axis=None, out=None) 
Parameters : 
arr :input array. 
q : percentile value. 
axis :axis along which we want to calculate the percentile 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 : Different array in which we want to place the result. The array must have same dimensions as expected output. 
Return :Percentile of the array (a scalar value if axis is none) or array with percentiles of values along specified axis.
Code #1 : Working 
Python
# Python Program illustrating# numpy.nanpercentile() method   import numpy as np   # 1D arrayarr = [20, 2, 7, np.nan, 34]print("arr : ", arr)print("50th percentile of arr : ",       np.percentile(arr, 50))print("25th percentile of arr : ",       np.percentile(arr, 25))print("75th percentile of arr : ",       np.percentile(arr, 75)) print("\n50th percentile of arr : ",      np.nanpercentile(arr, 50))print("25th percentile of arr : ",       np.nanpercentile(arr, 25))print("75th percentile of arr : ",      np.nanpercentile(arr, 75))
Output : 
arr :  [20, 2, 7, nan, 34]
50th percentile of arr :  nan
25th percentile of arr :  nan
75th percentile of arr :  nan

50th percentile of arr :  13.5
25th percentile of arr :  5.75
75th percentile of arr :  23.5
  Code #2 : 
Python
# Python Program illustrating# numpy.nanpercentile() method import numpy as np # 2D arrayarr = [[14, np.nan, 12, 33, 44],       [15, np.nan, 27, 8, 19],       [23, 2, np.nan, 1, 4, ]]print(& quot       \narr: \n"       , arr) # Percentile of the flattened arrayprint(& quot       \n50th Percentile of arr, axis = None : & quot       ,       np.percentile(arr, 50))print(& quot       \n50th Percentile of arr, axis = None : & quot       ,       np.nanpercentile(arr, 50))print(& quot       0th Percentile of arr, axis = None : & quot       ,       np.nanpercentile(arr, 0)) # Percentile along the axis = 0print(& quot       \n50th Percentile of arr, axis = 0 : & quot       ,       np.nanpercentile(arr, 50, axis=0))print(& quot       0th Percentile of arr, axis = 0 : & quot       ,       np.nanpercentile(arr, 0, axis=0)) # Percentile along the axis = 1print(& quot       \n50th Percentile of arr, axis = 1 : & quot       ,       np.nanpercentile(arr, 50, axis=1))print(& quot       0th Percentile of arr, axis = 1 : & quot       ,       np.nanpercentile(arr, 0, axis=1)) print(& quot       \n0th Percentile of arr, axis = 1: \n"       ,       np.nanpercentile(arr, 50, axis=1, keepdims=True))print(& quot       \n0th Percentile of arr, axis = 1: \n"       ,       np.nanpercentile(arr, 0, axis=1, keepdims=True))
Output : 
arr : 
 [[14, nan, 12, 33, 44], [15, nan, 27, 8, 19], [23, 2, nan, 1, 4]]

50th Percentile of arr, axis = None :  nan

50th Percentile of arr, axis = None :  14.5
0th Percentile of arr, axis = None :  1.0

50th Percentile of arr, axis = 0 :  [15.   2.  19.5  8.  19. ]
0th Percentile of arr, axis = 0 :  [14.  2. 12.  1.  4.]

50th Percentile of arr, axis = 1 :  [23.5 17.   3. ]
0th Percentile of arr, axis = 1 :  [12.  8.  1.]

0th Percentile of arr, axis = 1 : 
 [[23.5]
 [17. ]
 [ 3. ]]

0th Percentile of arr, axis = 1 : 
 [[12.]
 [ 8.]
 [ 1.]]
  Code #3: 
Python
# Python Program illustrating# numpy.nanpercentile() method import numpy as np # 2D arrayarr = [[14, np.nan, 12, 33, 44],       [15, np.nan, 27, 8, 19],       [23, np.nan, np.nan, 1, 4, ]]print(& quot       \narr: \n"       , arr)# Percentile along the axis = 1print(& quot       \n50th Percentile of arr, axis = 1 : & quot       ,       np.nanpercentile(arr, 50, axis=1))print(& quot       \n50th Percentile of arr, axis = 0 : & quot       ,       np.nanpercentile(arr, 50, axis=0))
Output : 
arr : 
 [[14, nan, 12, 33, 44], [15, nan, 27, 8, 19], [23, nan, nan, 1, 4]]

50th Percentile of arr, axis = 1 :  [23.5 17.   4. ]

50th Percentile of arr, axis = 0 :  [15.   nan 19.5  8.  19. ]
RuntimeWarning: All-NaN slice encountered
  overwrite_input, interpolation)
hamidullahbinol
daniel8l2l
Python numpy-Statistics Functions
Python-numpy
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to Install PIP on Windows ?
Python Classes and Objects
Python OOPs Concepts
Python | os.path.join() method
How to drop one or multiple columns in Pandas Dataframe
Introduction To PYTHON
How To Convert Python Dictionary To JSON?
Check if element exists in list in Python
Python | datetime.timedelta() function
Python | Get unique values from a list