- Python Basic Tutorial
- Python - Home
- Python - Overview
- Python - Environment Setup
- Python - Basic Syntax
- Python - Comments
- Python - Variables
- Python - Data Types
- Python - Operators
- Python - Decision Making
- Python - Loops
- Python - Numbers
- Python - Strings
- Python - Lists
- Python - Tuples
- Python - Dictionary
- Python - Date & Time
- Python - Functions
- Python - Modules
- Python - Files I/O
- Python - Exceptions

# Python Program to Calculate Standard Deviation

In this article, we will learn how to implement a python program to calculate standard deviation on a dataset.

Consider a set of values plotted on any coordinate axes. **Standard deviation** of these set of values, called ** population**, is defined as the variation seen among them. If the standard deviation is low, the values are plotted closely to the mean. But if the standard deviation is high, the values are dispersed farther from the mean.

It is denoted by square root of the variance of a dataset. There are two types of standard deviations −

The **population standard deviation** is calculated from every data value of a population. Hence, it is a fixed value. The mathematical formula is defined as −

$$\mathrm{SD\:=\:\sqrt{\frac{\sum(X_i\:-\:X_m)^2}{n}}}$$

Where,

**X**is the mean of a dataset._{m}**X**is the elements of the dataset._{i}**n**is the number of elements in the dataset.

However, the **sample standard deviation** is a statistic calculated only on some datum values of a population, hence the value depends upon the sample chosen. The mathematical formula is defined as −

$$\mathrm{SD\:=\:\sqrt{\frac{\sum(X_i\:-\:X_m)^2}{n\:-\:1}}}$$

Where,

**X**is the mean of a dataset._{m}**X**is the elements of the dataset._{i}**n**is the number of elements in the dataset.

### Input Output Scenarios

Let us now look at some input output scenarios for various sets of data −

Assume the dataset only contains positive integers −

Input: [2, 3, 4, 1, 2, 5] Result: Population Standard Deviation: 1.3437096247164249 Sample Standard Deviation: 0.8975274678557505

Assume the dataset only contains negative integers −

Input: [-2, -3, -4, -1, -2, -5] Result: Population Standard Deviation: 1.3437096247164249 Sample Standard Deviation: 0.8975274678557505

Assume the dataset only contains positive and negative integers −

Input: [-2, -3, -4, 1, 2, 5] Result: Population Standard Deviation: 3.131382371342656 Sample Standard Deviation: 2.967415635794143

## Using Mathematical Formula

We have seen the formula of standard deviation above in the same article; now let us look at the python program to implement the mathematical formula on various datasets.

### Example

In the following example, we are importing the ** math **library and calculating the standard deviation of the dataset by applying

**sqrt()**built-in method on its variance.

import math #declare the dataset list dataset = [2, 3, 4, 1, 2, 5] #find the mean of dataset sm=0 for i in range(len(dataset)): sm+=dataset[i] mean = sm/len(dataset) #calculating population standard deviation of the dataset deviation_sum = 0 for i in range(len(dataset)): deviation_sum+=(dataset[i]- mean)**2 psd = math.sqrt((deviation_sum)/len(dataset)) #calculating sample standard deviation of the dataset ssd = math.sqrt((deviation_sum)/len(dataset) - 1) #display output print("Population standard deviation of the dataset is", psd) print("Sample standard deviation of the dataset is", ssd)

### Output

The output standard deviation obtained is as follows −

Population standard deviation of the dataset is 1.3437096247164249 Sample standard deviation of the dataset is 0.8975274678557505

## Using *std()* function in numpy module

In this approach, we import the **numpy **module and only population standard deviation is calculated using the **numpy.std()** function on the elements of a **numpy **array.

### Example

The following python program is implemented to calculate the standard deviation on the elements of a numpy array −

import numpy as np #declare the dataset list dataset = np.array([2, 3, 4, 1, 2, 5]) #calculating standard deviation of the dataset sd = np.std(dataset) #display output print("Population standard deviation of the dataset is", sd)

### Output

The standard deviation is displayed as the following output −

Population standard deviation of the dataset is 1.3437096247164249

## Using *stdev()* and *pstdev()* Functions in statistics module

The **statistics **module in python provides functions called **stdev()** and **pstdev()** to calculate the standard deviation of a sample dataset. The** stdev()** function in python only calculates the sample standard deviation whereas the **pstdev()** function calculates the population standard deviation.

The parameters and return type for both functions is the same.

### Example 1: Using stdev() Function

The python program to demonstrate the usage of **stdev()** function to find the sample standard deviation of a dataset is as follows −

import statistics as st #declare the dataset list dataset = [2, 3, 4, 1, 2, 5] #calculating standard deviation of the dataset sd = st.stdev(dataset) #display output print("Standard Deviation of the dataset is", sd)

### Output

The sample standard deviation of the dataset obtained as an output is as follows −

Standard Deviation of the dataset is 1.4719601443879744

### Example 2: Using pstdev() Function

The python program to demonstrate the usage of **pstdev()** function to find the population standard deviation of a dataset is as follows −

import statistics as st #declare the dataset list dataset = [2, 3, 4, 1, 2, 5] #calculating standard deviation of the dataset sd = st.pstdev(dataset) #display output print("Standard Deviation of the dataset is", sd)

### Output

The sample standard deviation of the dataset obtained as an output is as follows −

Standard Deviation of the dataset is 1.3437096247164249

- Related Articles
- C++ Program to Calculate Standard Deviation
- Java Program to Calculate Standard Deviation
- Golang Program to Calculate Standard Deviation
- Swift Program to Calculate Standard Deviation
- C program to calculate the standard deviation
- How to calculate standard deviation in Excel?
- Python - Calculate the standard deviation of a column in a Pandas DataFrame
- C++ program to implement standard deviation of grouped data
- Variance and Standard Deviation
- PHP program to find standard deviation of values within an array
- What is Standard Deviation of Return?
- Difference Between Beta and Standard Deviation
- Plot mean and standard deviation in Matplotlib
- Print the standard deviation of Pandas series
- Average Returns and Standard Deviation of Securities