Calculate Quantiles in Python – Quartile of List & DataFrame (3 Examples)
In this Python programming tutorial you’ll learn how to get quantiles of a list or a pandas DataFrame column.
Example 1: Calculating the Quantiles of a List Object
my_lt = [10, 6, 2, 2, 15, 20, 3, 7, 4] # Constructing a list in Python print(my_lt) # [10, 6, 2, 2, 15, 20, 3, 7, 4] |
my_lt = [10, 6, 2, 2, 15, 20, 3, 7, 4] # Constructing a list in Python print(my_lt) # [10, 6, 2, 2, 15, 20, 3, 7, 4]
import numpy as np # Import NumPy |
import numpy as np # Import NumPy
print(np.quantile(my_lt, np.arange(0.25, 1, 0.25))) # Computing the quartiles of a list # [ 3. 6. 10.] |
print(np.quantile(my_lt, np.arange(0.25, 1, 0.25))) # Computing the quartiles of a list # [ 3. 6. 10.]
Example 2: Calculating the Quantiles of the Columns in a pandas DataFrame
import pandas as pd # Load pandas |
import pandas as pd # Load pandas
my_df = pd.DataFrame({'A':range(10, 17), # Constructing a pandas DataFrame 'B':[6, 1, 8, 5, 3, 8, 9], 'C':range(2, 9), 'GRP':['gr1', 'gr2', 'gr1', 'gr3', 'gr1', 'gr2', 'gr3']}) print(my_df) # A B C GRP # 0 10 6 2 gr1 # 1 11 1 3 gr2 # 2 12 8 4 gr1 # 3 13 5 5 gr3 # 4 14 3 6 gr1 # 5 15 8 7 gr2 # 6 16 9 8 gr3 |
my_df = pd.DataFrame({'A':range(10, 17), # Constructing a pandas DataFrame 'B':[6, 1, 8, 5, 3, 8, 9], 'C':range(2, 9), 'GRP':['gr1', 'gr2', 'gr1', 'gr3', 'gr1', 'gr2', 'gr3']}) print(my_df) # A B C GRP # 0 10 6 2 gr1 # 1 11 1 3 gr2 # 2 12 8 4 gr1 # 3 13 5 5 gr3 # 4 14 3 6 gr1 # 5 15 8 7 gr2 # 6 16 9 8 gr3
print(my_df.quantile(np.arange(0.1, 1, 0.1))) # Computing the deciles of all columns # A B C # 0.1 10.6 2.2 2.6 # 0.2 11.2 3.4 3.2 # 0.3 11.8 4.6 3.8 # 0.4 12.4 5.4 4.4 # 0.5 13.0 6.0 5.0 # 0.6 13.6 7.2 5.6 # 0.7 14.2 8.0 6.2 # 0.8 14.8 8.0 6.8 # 0.9 15.4 8.4 7.4 |
print(my_df.quantile(np.arange(0.1, 1, 0.1))) # Computing the deciles of all columns # A B C # 0.1 10.6 2.2 2.6 # 0.2 11.2 3.4 3.2 # 0.3 11.8 4.6 3.8 # 0.4 12.4 5.4 4.4 # 0.5 13.0 6.0 5.0 # 0.6 13.6 7.2 5.6 # 0.7 14.2 8.0 6.2 # 0.8 14.8 8.0 6.8 # 0.9 15.4 8.4 7.4
Example 3: Calculating the Quantiles of the Columns in a pandas DataFrame by Group
print(my_df.groupby('GRP').quantile(np.arange(0.25, 1, 0.25))) # Computing the column quartiles by group # A B C # GRP # gr1 0.25 11.00 4.50 3.00 # 0.50 12.00 6.00 4.00 # 0.75 13.00 7.00 5.00 # gr2 0.25 12.00 2.75 4.00 # 0.50 13.00 4.50 5.00 # 0.75 14.00 6.25 6.00 # gr3 0.25 13.75 6.00 5.75 # 0.50 14.50 7.00 6.50 # 0.75 15.25 8.00 7.25 |
print(my_df.groupby('GRP').quantile(np.arange(0.25, 1, 0.25))) # Computing the column quartiles by group # A B C # GRP # gr1 0.25 11.00 4.50 3.00 # 0.50 12.00 6.00 4.00 # 0.75 13.00 7.00 5.00 # gr2 0.25 12.00 2.75 4.00 # 0.50 13.00 4.50 5.00 # 0.75 14.00 6.25 6.00 # gr3 0.25 13.75 6.00 5.75 # 0.50 14.50 7.00 6.50 # 0.75 15.25 8.00 7.25