The numpy.quantile() method computes the q-th quantile of the data along the specified axis.
Example
import numpy as np
# create an array
array1 = np.array([0, 1, 2, 3, 4, 5, 6, 7])
# calculate the 0.25th, 0.50th and 0.75th quantile of the array
q25 = np.quantile(array1, 0.25)
q50 = np.quantile(array1, 0.50)
q75 = np.quantile(array1, 0.75)
print(q25, q50, q75)
# Output: 1.75 3.5 5.25
quantile() Syntax
The syntax of the numpy.quantile() method is:
numpy.quantile(array, q, axis = None, out = None, overwrite_input = False, method = 'linear', keepdims = False, interpolation = None)
quantile() Arguments
The numpy.quantile() method takes the following arguments:
array- input array (can bearray_like)q- qth quantile to find (can bearray_likeoffloat)axis(optional) - axis or axes along which the quantiles are computed (intortuple of int)out(optional) - output array in which to place the result (ndarray)keepdims(optional) - specifies whether to preserve the shape of the original array (bool)override_input(optional) -boolvalue that determines if intermediate calculations can modify an arraymethod(optional) - the interpolation method to useinterpolation(optional) - the deprecated name for themethodkeyword argument
Notes: The default values of numpy.quantile() have the following implications:
axis = None- the quantile of the entire array is taken.- By default,
keepdimsandoverride_inputwill beFalse. - The interpolation method is
'linear'. - If the input contains integers or floats smaller than
float64, the output data type isfloat64. Otherwise, the output data type is the same as that of the input.
quantile() Return Value
The numpy.quantile() method returns the q-th quantile(s) of the input array along the specified axis.
Quantile
The quantile is a statistical measure that represents the value below which a specific percentage of data falls. It helps analyze the distribution of a dataset.
In NumPy, the quantile() function computes the q-th quantile of data along the specified axis.
The q-th quantile represents the value below which q percent of the data falls. For example, the 0.50th quantile (also known as the median) divides the data into two equal halves.
Note: numpy.quantile() and numpy.percentile() do the same thing. If you want to specify q from 0 to 100, use percentile() and if you want to specify q from 0.0 to 1.0, use quantile().
Example 1: Find the Quantile of an ndArray
import numpy as np
# create an array
array1 = np.array([[[0, 1],
[2, 3]],
[[4, 5],
[6, 7]]])
# find the 50th quantile of entire array
quantile1 = np.quantile(array1, q = 0.50)
# find the 50th quantile across axis 0
quantile2 = np.quantile(array1, q = 0.50, axis = 0)
# find the 50th quantile across axis 0 and 1
quantile3 = np.quantile(array1, q = 0.50, axis = (0, 1))
print('\n50th quantile of the entire array:', quantile1)
print('\n50th quantile across axis 0:\n', quantile2)
print('\n50th quantile across axis 0 and 1:', quantile3)
Output
50th quantile of the entire array: 3.5 50th quantile across axis 0: [[2. 3.] [4. 5.]] 50th quantile across axis 0 and 1: [3. 4.]
Example 2: Using Optional out Argument
The out parameter allows us to specify an output array where the result will be stored.
import numpy as np
arr = np.array([[1, 2, 3],
[4, 5, 6]])
# create an output array
output = np.zeros(3)
# compute 25th quantile and store the result in the output array
np.quantile(arr, 0.25, out = output, axis = 0)
print('25th quantile:', output)
Output
25th quantile: [1.75 2.75 3.75]
Example 3: Using Optional keepdims Argument
If keepdims is set to True, the resultant array's dimensions are the same as the original array.
import numpy as np
arr = np.array([[1, 2, 3],
[4, 5, 6]])
# keepdims defaults to False
result1 = np.quantile(arr, 0.50 , axis = 0)
# pass keepdims as True
result2 = np.quantile(arr, 0.50, axis = 0, keepdims = True)
print('Dimensions in original array:', arr.ndim)
print('Without keepdims:', result1, 'with dimensions', result1.ndim)
print('With keepdims:', result2, 'with dimensions', result2.ndim)
Output
Dimensions in original array: 2 Without keepdims: [2.5 3.5 4.5] with dimensions 1 With keepdims: [[2.5 3.5 4.5]] with dimensions 2