# Python statistics | mode function

The** mode** of a set of data values is the value that **appears most often**. It is the value at which the data is most likely to be sampled. A mode of a continuous probability distribution is often considered to be any value x at which its **probability density function has a locally maximum value, so any peak is a mode.**

Python is very robust when it comes to statistics and working with a set of large range of values. The statistics module has a very large number of functions to work with very large data-sets. The mode() function is one of such methods. This function returns the robust measure of a central data point in a given range of data-sets.

**Example :**

Given data-set is :[1, 2, 3, 4, 4, 4, 4, 5, 6, 7, 7, 7, 8]The mode of the given data-set is4Logic : 4 is the most occurring/ most common element from the given list

Syntax :mode([data-set])Parameters :[data-set]which is a tuple, list or a iterator of real valued numbers as well as Strings.Return type :Returns the most-common data point from discrete or nominal data.Errors and Exceptions :Raises StatisticsError when there are two modes present in a single list, or when data set is empty .

**
Code #1 :** This piece will demonstrate mode() function through a simple example.

`# Python code to demonstrate the ` `# use of mode() function ` ` ` `# mode() function a sub-set of the statistics module ` `# We need to import statistics module before doing any work ` `import` `statistics ` ` ` `# declaring a simple data-set consisting of real valued ` `# positive integers. ` `set1 ` `=` `[` `1` `, ` `2` `, ` `3` `, ` `3` `, ` `4` `, ` `4` `, ` `4` `, ` `5` `, ` `5` `, ` `6` `] ` ` ` `# In the given data-set ` `# Count of 1 is 1 ` `# Count of 2 is 1 ` `# Count of 3 is 2 ` `# Count of 4 is 3 ` `# Count of 5 is 2 ` `# Count of 6 is 1 ` `# We can infer that 4 has the highest population distribution ` `# So mode of set1 is 4 ` ` ` `# Printing out mode of given data-set ` `print` `(` `"Mode of given data set is % s"` `%` `(statistics.mode(set1))) ` |

*chevron_right*

*filter_none*

**Output :**

Mode of given data set is 4

**Code #2 : **In this code we will be demonstrating the mode() function a various range of data-sets.

`# Python code to demonstrate the ` `# working of mode() function ` `# on a various range of data types ` ` ` `# Importing the statistics module ` `from` `statistics ` `import` `mode ` ` ` `# Importing fractions module as fr ` `# Enables to calculate harmonic_mean of a ` `# set in Fraction ` `from` `fractions ` `import` `Fraction as fr ` ` ` `# tuple of positive integer numbers ` `data1 ` `=` `(` `2` `, ` `3` `, ` `3` `, ` `4` `, ` `5` `, ` `5` `, ` `5` `, ` `5` `, ` `6` `, ` `6` `, ` `6` `, ` `7` `) ` ` ` `# tuple of a set of floating point values ` `data2 ` `=` `(` `2.4` `, ` `1.3` `, ` `1.3` `, ` `1.3` `, ` `2.4` `, ` `4.6` `) ` ` ` `# tuple of a set of fractional numbers ` `data3 ` `=` `(fr(` `1` `, ` `2` `), fr(` `1` `, ` `2` `), fr(` `10` `, ` `3` `), fr(` `2` `, ` `3` `)) ` ` ` `# tuple of a set of negaitve integers ` `data4 ` `=` `(` `-` `1` `, ` `-` `2` `, ` `-` `2` `, ` `-` `2` `, ` `-` `7` `, ` `-` `7` `, ` `-` `9` `) ` ` ` `# tuple of strings ` `data5 ` `=` `(` `"red"` `, ` `"blue"` `, ` `"black"` `, ` `"blue"` `, ` `"black"` `, ` `"black"` `, ` `"brown"` `) ` ` ` ` ` `# Printing out the mode of the above data-sets ` `print` `(` `"Mode of data set 1 is % s"` `%` `(mode(data1))) ` `print` `(` `"Mode of data set 2 is % s"` `%` `(mode(data2))) ` `print` `(` `"Mode of data set 3 is % s"` `%` `(mode(data3))) ` `print` `(` `"Mode of data set 4 is % s"` `%` `(mode(data4))) ` `print` `(` `"Mode of data set 5 is % s"` `%` `(mode(data5))) ` |

*chevron_right*

*filter_none*

**Output :**

Mode of data set 1 is 5 Mode of data set 2 is 1.3 Mode of data set 3 is 1/2 Mode of data set 4 is -2 Mode of data set 5 is black

**Code #3 : **In this piece of code will demonstrate when **StatisticsError** is raised

`# Python code to demonstrate the ` `# statistics error in mode function ` ` ` `''' ` `StatisticsError is raised while using mode when there are ` `two equal modes present in a data set and when the data set ` `is empty or null ` `'''` ` ` `# importing statistics module ` `import` `statistics ` ` ` `# creating a data set consisting of two equal data-sets ` `data1 ` `=` `[` `1` `, ` `1` `, ` `1` `, ` `-` `1` `, ` `-` `1` `, ` `-` `1` `] ` ` ` `# In the above data set ` `# Count of 1 is 3 ` `# Count of -1 is also 3 ` `# StatisticsError will be raised ` ` ` `print` `(statistics.mode(data1)) ` |

*chevron_right*

*filter_none*

**Output L**

Traceback (most recent call last): File "/home/38fbe95fe09d5f65aaa038e37aac20fa.py", line 20, in print(statistics.mode(data1)) File "/usr/lib/python3.5/statistics.py", line 474, in mode 'no unique mode; found %d equally common values' % len(table) statistics.StatisticsError: no unique mode; found 2 equally common values

**Applications :** The **mode()** is a statistics function and mostly used in Financial Sectors to compare values/prices with past details, calculate/predict probable future prices from a price distribution set. **mean() **is not used separately but along with two other pillars of statistics ** mean and median** creates a very powerful tool which can be used to reveal any aspect of your data.

## Recommended Posts:

- scipy stats.mode() function | Python
- Python statistics | mean() function
- Python - Power-Function Distribution in Statistics
- Python | Pandas dataframe.mode()
- Python | Pandas Series.mode()
- Finding Mean, Median, Mode in Python without libraries
- Python | Play a video in reverse mode using OpenCV
- Python statistics | harmonic_mean()
- Python statistics | median_grouped()
- Python statistics | median_high()
- Python statistics | median_low()
- Python statistics | stdev()
- Python statistics | pvariance()
- Python statistics | median()
- Python statistics | variance()

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.