Interquartile Range and Quartile Deviation using NumPy and SciPy Last Updated : 02 Jan, 2025 Comments Improve Suggest changes Like Article Like Report In statistical analysis, understanding the spread or variability of a dataset is crucial for gaining insights into its distribution and characteristics. Two common measures used for quantifying this variability are the interquartile range (IQR) and quartile deviation. Quartiles Quartiles are a kind of quantile that divides the number of data points into four parts, or quarters. The first quartile (Q1) , is defined as the middle number between the smallest number and the median of the data set, The second quartile (Q2) is the median of the given data set. The third quartile (Q3) is the middle number between the median and the largest value of the data set. Quartiles Algorithm to find Quartiles Here's a step-by-step algorithm to find quartiles: Sort the dataset in ascending order. Calculate the total number of entries in the dataset. If the number of entries is even: Calculate the median (Q2) by taking the average of the two middle values. Divide the dataset into two halves: the first half containing the smallest n entries and the second half containing the largest n entries, where n = total number of entries / 2. Calculate Q1 as the median of the first half. Calculate Q3 as the median of the second half. If the number of entries is odd: Calculate the median (Q2) as the middle value. Divide the dataset into two halves: the first half containing the smallest n entries and the second half containing the largest n entries, where n = (total number of entries - 1) / 2. Calculate Q1 as the median of the first half. Calculate Q3 as the median of the second half. The calculated values of Q1, Q2, and Q3 represent the first quartile, median (second quartile), and third quartile respectively. Range: It is the difference between the largest value and the smallest value in the given data set. Interquartile Range The interquartile range (IQR) is indeed defined as the difference between the third quartile (Q3) and the first quartile (Q1). It's often used as a measure of statistical dispersion, specifically focusing on the middle 50% of the data. This range effectively covers the center of the distribution and contains 50% of the observations, making it useful for understanding the variability within a dataset while being less sensitive to outliers compared to the range. Mathematically, it's represented as: IQR= Q 3− Q 1 Where , Q 3 is the third quartile and Q 1 is the first quartile. Uses of IQR The interquartile range has a breakdown point of 25% due to which it is often preferred over the total range. The IQR is used to build box plots, simple graphical representations of a probability distribution. The IQR can also be used to identify the outliers in the given data set. The IQR gives the central tendency of the data. Interpretation of IQR The data set has a higher value of interquartile range (IQR) has more variability. The data set having a lower value of interquartile range (IQR) is preferable. Suppose, if we have two data sets and their interquartile ranges are IR1 and IR2, and if IR1 > IR2 then the data in IR1 is said to have more variability than the data in IR2 and data in IR2 is preferable. Quartile Deviation The quartile deviation is a measure of statistical dispersion or spread within a dataset. It's defined as half of the difference between the third quartile (Q3) and the first quartile (Q1). Mathematically, it's represented as: Quartile Deviation= \frac {Q3-Q1} 2 Uses of Quartile Deviation Quartile deviation quantifies spread within a dataset, computed as half the difference between the third and first quartiles. It provides a robust measure of variability less sensitive to outliers compared to other measures like the range or standard deviation. Used in descriptive statistics to complement measures of central tendency. Helps assess skewness and identify potential outliers in distributions. Facilitates comparison of variability between different datasets or subsets of data. Interpretation of Quartile Deviation Quartile deviation represents the average spread or variability within the middle 50% of a dataset. It indicates how data points are distributed around the median, providing insights into the dispersion of values. A larger quartile deviation suggests greater variability among the central 50% of data points. Quartile deviation is less affected by extreme values or outliers compared to other measures of spread, making it robust in skewed distributions. It aids in comparing the consistency or dispersion of data between different datasets or subsets. Interquartile Range And Quartile Deviation of One Array using NumPy We define a sample dataset named data . We use NumPy's percentile function to calculate the first quartile (Q1) and third quartile (Q3) of the dataset. We then calculate the interquartile range (IQR) as the difference between Q3 and Q1. Finally, we compute the quartile deviation by dividing the IQR by 2. Python import numpy as np # Sample dataset data = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) # Calculate Interquartile Range (IQR) using numpy q1 = np.percentile(data, 25) q3 = np.percentile(data, 75) iqr = q3 - q1 # Calculate Quartile Deviation quartile_deviation = (q3 - q1) / 2 print("Interquartile Range (IQR):", iqr) print("Quartile Deviation:", quartile_deviation) Output: Interquartile Range (IQR): 4.5Quartile Deviation: 2.25 Interquartile Range And Quartile Deviation of One Array using SciPy We import NumPy and SciPy libraries. We define a sample dataset named data . We use SciPy's iqr function to directly calculate the interquartile range (IQR) of the dataset. We then calculate the quartile deviation by dividing the IQR by 2. Python import numpy as np from scipy.stats import iqr # Sample dataset data = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) # Calculate Interquartile Range (IQR) using scipy iqr_value = iqr(data) # Calculate Quartile Deviation quartile_deviation = iqr_value / 2 print("Interquartile Range (IQR):", iqr_value) print("Quartile Deviation:", quartile_deviation) Output: Interquartile Range (IQR): 4.5Quartile Deviation: 2.25 Comment More infoAdvertise with us Next Article Anova Formula mkumarchaudhary06 Follow Improve Article Tags : Python Numpy Python-numpy Python-scipy Practice Tags : python Similar Reads Data Analysis with Python In this article, we will discuss how to do data analysis with Python. We will discuss all sorts of data analysis i.e. analyzing numerical data with NumPy, Tabular data with Pandas, data visualization Matplotlib, and Exploratory data analysis.Data Analysis With Python Data Analysis is the technique o 15+ min read Introduction to Data AnalysisWhat is Data Analysis?Data analysis refers to the practice of examining datasets to draw conclusions about the information they contain. It involves organizing, cleaning, and studying the data to understand patterns or trends. Data analysis helps to answer questions like "What is happening" or "Why is this happening".Org 6 min read Data Analytics and its typeData analytics is an important field that involves the process of collecting, processing, and interpreting data to uncover insights and help in making decisions. Data analytics is the practice of examining raw data to identify trends, draw conclusions, and extract meaningful information. This involv 9 min read How to Install Numpy on Windows?Python NumPy is a general-purpose array processing package that provides tools for handling n-dimensional arrays. It provides various computing tools such as comprehensive mathematical functions, and linear algebra routines. NumPy provides both the flexibility of Python and the speed of well-optimiz 3 min read How to Install Pandas in Python?Pandas in Python is a package that is written for data analysis and manipulation. Pandas offer various operations and data structures to perform numerical data manipulations and time series. Pandas is an open-source library that is built over Numpy libraries. Pandas library is known for its high pro 5 min read How to Install Matplotlib on python?Matplotlib is an amazing visualization library in Python for 2D plots of arrays. Matplotlib is a multi-platform data visualization library built on NumPy arrays and designed to work with the broader SciPy stack. In this article, we will look into the various process of installing Matplotlib on Windo 2 min read How to Install Python Tensorflow in Windows?Tensorflow is a free and open-source software library used to do computational mathematics to build machine learning models more profoundly deep learning models. It is a product of Google built by Googleâs brain team, hence it provides a vast range of operations performance with ease that is compati 3 min read Data Analysis LibrariesPandas TutorialPandas is an open-source software library designed for data manipulation and analysis. It provides data structures like series and DataFrames to easily clean, transform and analyze large datasets and integrates with other Python libraries, such as NumPy and Matplotlib. It offers functions for data t 6 min read NumPy Tutorial - Python LibraryNumPy (short for Numerical Python ) is one of the most fundamental libraries in Python for scientific computing. It provides support for large, multi-dimensional arrays and matrices along with a collection of mathematical functions to operate on arrays.At its core it introduces the ndarray (n-dimens 3 min read Data Analysis with SciPyScipy is a Python library useful for solving many mathematical equations and algorithms. It is designed on the top of Numpy library that gives more extension of finding scientific mathematical formulae like Matrix Rank, Inverse, polynomial equations, LU Decomposition, etc. Using its high-level funct 6 min read Introduction to TensorFlowTensorFlow is an open-source framework for machine learning (ML) and artificial intelligence (AI) that was developed by Google Brain. It was designed to facilitate the development of machine learning models, particularly deep learning models by providing tools to easily build, train and deploy them 6 min read Data Visulization LibrariesMatplotlib TutorialMatplotlib is an open-source visualization library for the Python programming language, widely used for creating static, animated and interactive plots. It provides an object-oriented API for embedding plots into applications using general-purpose GUI toolkits like Tkinter, Qt, GTK and wxPython. It 5 min read Python Seaborn TutorialSeaborn is a library mostly used for statistical plotting in Python. It is built on top of Matplotlib and provides beautiful default styles and color palettes to make statistical plots more attractive.In this tutorial, we will learn about Python Seaborn from basics to advance using a huge dataset of 15+ min read Plotly tutorialPlotly library in Python is an open-source library that can be used for data visualization and understanding data simply and easily. Plotly supports various types of plots like line charts, scatter plots, histograms, box plots, etc. So you all must be wondering why Plotly is over other visualization 15+ min read Introduction to Bokeh in PythonBokeh is a Python interactive data visualization. Unlike Matplotlib and Seaborn, Bokeh renders its plots using HTML and JavaScript. It targets modern web browsers for presentation providing elegant, concise construction of novel graphics with high-performance interactivity. Features of Bokeh: Some o 1 min read Exploratory Data Analysis (EDA)Univariate, Bivariate and Multivariate data and its analysisIn this article,we will be discussing univariate, bivariate, and multivariate data and their analysis. Univariate data: Univariate data refers to a type of data in which each observation or data point corresponds to a single variable. In other words, it involves the measurement or observation of a s 5 min read Measures of Central Tendency in StatisticsCentral tendencies in statistics are numerical values that represent the middle or typical value of a dataset. Also known as averages, they provide a summary of the entire data, making it easier to understand the overall pattern or behavior. These values are useful because they capture the essence o 11 min read Measures of Spread - Range, Variance, and Standard DeviationCollecting the data and representing it in form of tables, graphs, and other distributions is essential for us. But, it is also essential that we get a fair idea about how the data is distributed, how scattered it is, and what is the mean of the data. The measures of the mean are not enough to descr 8 min read Interquartile Range and Quartile Deviation using NumPy and SciPyIn statistical analysis, understanding the spread or variability of a dataset is crucial for gaining insights into its distribution and characteristics. Two common measures used for quantifying this variability are the interquartile range (IQR) and quartile deviation. Quartiles Quartiles are a kind 5 min read Anova FormulaANOVA Test, or Analysis of Variance, is a statistical method used to test the differences between the means of two or more groups. Developed by Ronald Fisher in the early 20th century, ANOVA helps determine whether there are any statistically significant differences between the means of three or mor 7 min read Skewness of Statistical DataSkewness is a measure of the asymmetry of the probability distribution of a real-valued random variable about its mean. In simpler terms, it indicates whether the data is concentrated more on one side of the mean compared to the other side.Why is skewness important?Understanding the skewness of data 5 min read How to Calculate Skewness and Kurtosis in Python?Skewness is a statistical term and it is a way to estimate or measure the shape of a distribution.  It is an important statistical methodology that is used to estimate the asymmetrical behavior rather than computing frequency distribution. Skewness can be two types: Symmetrical: A distribution can b 3 min read Difference Between Skewness and KurtosisWhat is Skewness? Skewness is an important statistical technique that helps to determine the asymmetrical behavior of the frequency distribution, or more precisely, the lack of symmetry of tails both left and right of the frequency curve. A distribution or dataset is symmetric if it looks the same t 4 min read Histogram | Meaning, Example, Types and Steps to DrawWhat is Histogram?A histogram is a graphical representation of the frequency distribution of continuous series using rectangles. The x-axis of the graph represents the class interval, and the y-axis shows the various frequencies corresponding to different class intervals. A histogram is a two-dimens 5 min read Interpretations of HistogramHistograms helps visualizing and comprehending the data distribution. The article aims to provide comprehensive overview of histogram and its interpretation. What is Histogram?Histograms are graphical representations of data distributions. They consist of bars, each representing the frequency or cou 7 min read Box PlotBox Plot is a graphical method to visualize data distribution for gaining insights and making informed decisions. Box plot is a type of chart that depicts a group of numerical data through their quartiles. In this article, we are going to discuss components of a box plot, how to create a box plot, u 7 min read Quantile Quantile plotsThe quantile-quantile( q-q plot) plot is a graphical method for determining if a dataset follows a certain probability distribution or whether two samples of data came from the same population or not. Q-Q plots are particularly useful for assessing whether a dataset is normally distributed or if it 8 min read What is Univariate, Bivariate & Multivariate Analysis in Data Visualisation?Data Visualisation is a graphical representation of information and data. By using different visual elements such as charts, graphs, and maps data visualization tools provide us with an accessible way to find and understand hidden trends and patterns in data. In this article, we are going to see abo 3 min read Using pandas crosstab to create a bar plotIn this article, we will discuss how to create a bar plot by using pandas crosstab in Python. First Lets us know more about the crosstab, It is a simple cross-tabulation of two or more variables. What is cross-tabulation? It is a simple cross-tabulation that help us to understand the relationship be 3 min read Exploring Correlation in PythonThis article aims to give a better understanding of a very important technique of multivariate exploration. A correlation Matrix is basically a covariance matrix. Also known as the auto-covariance matrix, dispersion matrix, variance matrix, or variance-covariance matrix. It is a matrix in which the 4 min read Covariance and CorrelationCovariance and correlation are the two key concepts in Statistics that help us analyze the relationship between two variables. Covariance measures how two variables change together, indicating whether they move in the same or opposite directions. Relationship between Independent and dependent variab 5 min read Factor Analysis | Data AnalysisFactor analysis is a statistical method used to analyze the relationships among a set of observed variables by explaining the correlations or covariances between them in terms of a smaller number of unobserved variables called factors. Table of Content What is Factor Analysis?What does Factor mean i 13 min read Data Mining - Cluster AnalysisData mining is the process of finding patterns, relationships and trends to gain useful insights from large datasets. It includes techniques like classification, regression, association rule mining and clustering. In this article, we will learn about clustering analysis in data mining.Understanding 6 min read MANOVA Test in R ProgrammingMultivariate analysis of variance (MANOVA) is simply an ANOVA (Analysis of variance) with several dependent variables. It is a continuation of the ANOVA. In an ANOVA, we test for statistical differences on one continuous dependent variable by an independent grouping variable. The MANOVA continues th 4 min read MANOVA Test in R ProgrammingMultivariate analysis of variance (MANOVA) is simply an ANOVA (Analysis of variance) with several dependent variables. It is a continuation of the ANOVA. In an ANOVA, we test for statistical differences on one continuous dependent variable by an independent grouping variable. The MANOVA continues th 4 min read Python - Central Limit TheoremCentral Limit Theorem (CLT) is a foundational principle in statistics, and implementing it using Python can significantly enhance data analysis capabilities. Statistics is an important part of data science projects. We use statistical tools whenever we want to make any inference about the population 7 min read Probability Distribution FunctionProbability Distribution refers to the function that gives the probability of all possible values of a random variable.It shows how the probabilities are assigned to the different possible values of the random variable.Common types of probability distributions Include: Binomial Distribution.Bernoull 8 min read Probability Density Estimation & Maximum Likelihood EstimationProbability density and maximum likelihood estimation (MLE) are key ideas in statistics that help us make sense of data. Probability Density Function (PDF) tells us how likely different outcomes are for a continuous variable, while Maximum Likelihood Estimation helps us find the best-fitting model f 8 min read Exponential Distribution in R Programming - dexp(), pexp(), qexp(), and rexp() FunctionsThe Exponential Distribution is a continuous probability distribution that models the time between independent events occurring at a constant average rate. It is widely used in fields like reliability analysis, queuing theory, and survival analysis. The exponential distribution is a special case of 5 min read Binomial Distribution in Data ScienceBinomial Distribution is used to calculate the probability of a specific number of successes in a fixed number of independent trials where each trial results in one of two outcomes: success or failure. It is used in various fields such as quality control, election predictions and medical tests to ma 7 min read Poisson Distribution | Definition, Formula, Table and ExamplesThe Poisson distribution is a discrete probability distribution that calculates the likelihood of a certain number of events happening in a fixed time or space, assuming the events occur independently and at a constant rate.It is characterized by a single parameter, λ (lambda), which represents the 11 min read P-Value: Comprehensive Guide to Understand, Apply, and InterpretA p-value is a statistical metric used to assess a hypothesis by comparing it with observed data. This article delves into the concept of p-value, its calculation, interpretation, and significance. It also explores the factors that influence p-value and highlights its limitations. Table of Content W 12 min read Z-Score in Statistics | Definition, Formula, Calculation and UsesZ-Score in statistics is a measurement of how many standard deviations away a data point is from the mean of a distribution. A z-score of 0 indicates that the data point's score is the same as the mean score. A positive z-score indicates that the data point is above average, while a negative z-score 15+ min read How to Calculate Point Estimates in R?Point estimation is a technique used to find the estimate or approximate value of population parameters from a given data sample of the population. The point estimate is calculated for the following two measuring parameters:Measuring parameterPopulation ParameterPoint EstimateProportionÏp MeanμxÌ Th 3 min read Confidence IntervalA Confidence Interval (CI) is a range of values that contains the true value of something we are trying to measure like the average height of students or average income of a population.Instead of saying: âThe average height is 165 cm.âWe can say: âWe are 95% confident the average height is between 1 7 min read Chi-square test in Machine LearningChi-Square test helps us determine if there is a significant relationship between two categorical variables and the target variable. It is a non-parametric statistical test meaning it doesnât follow normal distribution. Example of Chi-square testThe Chi-square test compares the observed frequencies 7 min read Hypothesis TestingHypothesis testing compares two opposite ideas about a group of people or things and uses data from a small part of that group (a sample) to decide which idea is more likely true. We collect and study the sample data to check if the claim is correct.Hypothesis TestingFor example, if a company says i 9 min read Data PreprocessingML | Data Preprocessing in PythonData preprocessing is a important step in the data science transforming raw data into a clean structured format for analysis. It involves tasks like handling missing values, normalizing data and encoding variables. Mastering preprocessing in Python ensures reliable insights for accurate predictions 6 min read ML | Overview of Data CleaningData cleaning is a important step in the machine learning (ML) pipeline as it involves identifying and removing any missing duplicate or irrelevant data. The goal of data cleaning is to ensure that the data is accurate, consistent and free of errors as raw data is often noisy, incomplete and inconsi 13 min read ML | Handling Missing ValuesMissing values are a common issue in machine learning. This occurs when a particular variable lacks data points, resulting in incomplete information and potentially harming the accuracy and dependability of your models. It is essential to address missing values efficiently to ensure strong and impar 12 min read Detect and Remove the Outliers using PythonOutliers, deviating significantly from the norm, can distort measures of central tendency and affect statistical analyses. The piece explores common causes of outliers, from errors to intentional introduction, and highlights their relevance in outlier mining during data analysis. The article delves 10 min read Data TransformationData Normalization Machine LearningNormalization is an essential step in the preprocessing of data for machine learning models, and it is a feature scaling technique. Normalization is especially crucial for data manipulation, scaling down, or up the range of data before it is utilized for subsequent stages in the fields of soft compu 9 min read Sampling distribution Using PythonThere are different types of distributions that we study in statistics like normal/gaussian distribution, exponential distribution, binomial distribution, and many others. We will study one such distribution today which is Sampling Distribution.Let's say we have some data then if we sample some fini 3 min read Time Series Data AnalysisData Mining - Time-Series, Symbolic and Biological Sequences DataData mining refers to extracting or mining knowledge from large amounts of data. In other words, Data mining is the science, art, and technology of discovering large and complex bodies of data in order to discover useful patterns. Theoreticians and practitioners are continually seeking improved tech 3 min read Basic DateTime Operations in PythonPython has an in-built module named DateTime to deal with dates and times in numerous ways. In this article, we are going to see basic DateTime operations in Python. There are six main object classes with their respective components in the datetime module mentioned below: datetime.datedatetime.timed 12 min read Time Series Analysis & Visualization in PythonTime series data consists of sequential data points recorded over time which is used in industries like finance, pharmaceuticals, social media and research. Analyzing and visualizing this data helps us to find trends and seasonal patterns for forecasting and decision-making. In this article, we will 6 min read How to deal with missing values in a Timeseries in Python?It is common to come across missing values when working with real-world data. Time series data is different from traditional machine learning datasets because it is collected under varying conditions over time. As a result, different mechanisms can be responsible for missing records at different tim 9 min read How to calculate MOVING AVERAGE in a Pandas DataFrame?Calculating the moving average in a Pandas DataFrame is used for smoothing time series data and identifying trends. The moving average, also known as the rolling mean, helps reduce noise and highlight significant patterns by averaging data points over a specific window. In Pandas, this can be achiev 7 min read What is a trend in time series?Time series data is a sequence of data points that measure some variable over ordered period of time. It is the fastest-growing category of databases as it is widely used in a variety of industries to understand and forecast data patterns. So while preparing this time series data for modeling it's i 3 min read How to Perform an Augmented Dickey-Fuller Test in RAugmented Dickey-Fuller Test: It is a common test in statistics and is used to check whether a given time series is at rest. A given time series can be called stationary or at rest if it doesn't have any trend and depicts a constant variance over time and follows autocorrelation structure over a per 3 min read AutoCorrelationAutocorrelation is a fundamental concept in time series analysis. Autocorrelation is a statistical concept that assesses the degree of correlation between the values of variable at different time points. The article aims to discuss the fundamentals and working of Autocorrelation. Table of Content Wh 10 min read Case Studies and ProjectsStep by Step Predictive Analysis - Machine LearningPredictive analytics involves certain manipulations on data from existing data sets with the goal of identifying some new trends and patterns. These trends and patterns are then used to predict future outcomes and trends. By performing predictive analysis, we can predict future trends and performanc 3 min read 6 Tips for Creating Effective Data VisualizationsThe reality of things has completely changed, making data visualization a necessary aspect when you intend to make any decision that impacts your business growth. Data is no longer for data professionals; it now serves as the center of all decisions you make on your daily operations. It's vital to e 6 min read Like