In this article, we will learn how to utilize the functionalities provided by excel and python libraries to calculate IQR,
In this article, we will learn how to utilize the functionalities provided by excel and python libraries to calculate IQR,
In previous article we saw how to calculate the IQR by hand with multiple methods. In this article, we will learn how to utilize the functionalities provided by excel and python libraries to achieve the same.
Calculating Interquartile Range with Excel and python libraries.
In the previous article, how to find IQR with mathematical formulae. Now we will learn to use these mathematical formulas implemented in Excel and various python libraries.
In all the quartile functions below, the format for the argument is the same.
QUARTILE(range, Qno)
QUARTILE(A1:A9, 1)
QUARTILE.INC(A1:A9, 1)
QUARTILE.EXC(A1:A9, 1)
Excel provides three functions to calculate quartile, quartile.exc and quartile.inc.
Quartile provides answers similar to quartile.inc.
Quartile.inc uses median inclusion method to find quartiles of the provided range of numbers and number of quartile in the function.
Inversely, Quartile.exc uses median exclusion to find quartiles of the provided range of numbers and numbers of quartile in the function.
In the following example, series column shows a2:a9 cells are filled with dataset.
We are showing a quartile calculated left side table. We are calculating quartiles 1,2 and 3. Which are 25%, 50% and 75% respectively.
We show formulas and arguments for calculating the IQR with each method.
In the following image, we show actual calculations and answers of the series
Following is an example for calculating the quartiles and IQR using python NumPy library.
# import libraries
import numpy as np
import pandas as pd
# create list data series
series=[15,36,39,40,41,42,43,47,49]
# create dataaaframe and insert series as a column
df=pd.DataFrame(data=series,columns=['series'])
print(df)
series
0 15
1 36
2 39
3 40
4 41
5 42
6 43
7 47
8 49
Python# calculate first quartile
q1=np.quantile(df,0.25)
# calculate second quartile
q2=np.quantile(df,0.5)
# calculate three quartile
q3=np.quantile(df,0.75)
print(f'Q1: {q1}\nQ2: {q2}\nQ3: {q3}')
# calculate IQR by substracting Q3 with Q1
print(f'IQR: {q3-q1}')
Q1: 39.0
Q2: 41.0
Q3: 43.0
IQR: 4.0
Python# Load all the available methods provided by library.
methods=['inverted_cdf','averaged_inverted_cdf','closest_observation','interpolated_inverted_cdf','hazen','weibull','linear','median_unbiased','normal_unbiased']
# traverse through all methods and calculate IQR with each method.
for i in methods:
print(i.upper())
q1=np.quantile(df,0.25,method=i)
q2=np.quantile(df,0.5,method=i)
q3=np.quantile(df,0.75,method=i)
print(f'Q1: {q1}\nQ2: {q2}\nQ3: {q3}')
print(f'IQR: {q3-q1}\n\n')
INVERTED_CDF Q1: 39 Q2: 41 Q3: 43 IQR: 4 | INTERPOLATED_INVERTED_CDF Q1: 36.75 Q2: 40.5 Q3: 42.75 IQR: 6.0 | LINEAR Q1: 39.0 Q2: 41.0 Q3: 43.0 IQR: 4.0 |
AVERAGED_INVERTED_CDF Q1: 39.0 Q2: 41.0 Q3: 43.0 IQR: 4.0 | HAZEN Q1: 38.25 Q2: 41.0 Q3: 44.0 IQR: 5.75 | MEDIAN_UNBIASED Q1: 38.0 Q2: 41.0 Q3: 44.33333333333333 IQR: 6.333333333333329 |
CLOSEST_OBSERVATION Q1: 36 Q2: 41 Q3: 43 IQR: 7 | WEIBULL Q1: 37.5 Q2: 41.0 Q3: 45.0 IQR: 7.5 | NORMAL_UNBIASED Q1: 38.0625 Q2: 41.0 Q3: 44.25 IQR: 6.1875 |
In the above example, we calculated IQR with NumPy’s quartile function. Let’s calculate IQR directly using SciPy library. This library directly provides ability to calculate IQR of a series. It also provides different interpolation techniques for calculations. Linear, Lower, Higher, Nearest, Midpoint.
interpol = ['linear', 'lower', 'higher', 'nearest', 'midpoint']
import scipy.stats
for i in interpol:
print(i.upper())
print(f'IQR: {scipy.stats.iqr(df,interpolation=i)}')
LINEAR
IQR: 4.0
LOWER
IQR: 4
HIGHER
IQR: 4
NEAREST
IQR: 4
MIDPOINT
IQR: 4.0
PythonANCOVA is an extension of ANOVA (Analysis of Variance) that combines blocks of regression analysis and ANOVA. Which makes it Analysis of Covariance.
What if we learn topics in a desirable way!! What if we learn to write Python codes from gamers data !!
Start using NotebookLM today and embark on a smarter, more efficient learning journey!
This can be a super guide for you to start and excel in your data science career.
A method to find a statistical relationship between two variables in a dataset where one variable is used to group data.
Seaborn library has matplotlib at its core for data point visualizations. This library gives highly statistical informative graphics functionality to Seaborn.
The Matplotlib library helps you create static and dynamic visualisations. Dynamic visualizations that are animated and interactive. This library makes it easy to plot data and create graphs.
This library is named Plotly after the company of the same name. Plotly provides visualization libraries for Python, R, MATLAB, Perl, Julia, Arduino, and REST.
Numpy array have functions for matrices ,linear algebra ,Fourier Transform. Numpy arrays provide 50x more speed than a python list.
Numpy has created a vast ecosystem spanning numerous fields of science.
Pandas is a easy to use data analysis and manipulation tool. Pandas provides functionality for categorical,ordinal, and time series data . Panda provides fast and powerful calculations for data analysis.
In this tutorial, you will learn How to Access The Data in Various Ways From the dataframe.
Understand one of the important data types in Python. Each item in a set is distinct. Sets can store multiple items of various types of data.
Tuples are a sequence of Python objects. A tuple is created by separating items with a comma. They are put inside the parenthesis “”(“” , “”)””.
Leave a Reply
You must be logged in to post a comment.