Python Tutorial

# Finding the mode of a list | Python

>>> myList = [10, 20, 20, 30, 30 ,30, 40] >>> max(set(myList), key=myList.count) 30

## Python mod()

The mode, a descriptive statistic, serves as a measure of central tendency within a distribution. It corresponds to the value that appears most frequently, indicating the element with the highest occurrence rate. The presence of mode can be singular, multiple, or nonexistent. Absence of a mode occurs when all elements are unique. Various Python methodologies for determining the mode will be explored in this lesson, providing insights into identifying the most frequent values within a dataset.

To calculate the mode of a list of values:

1. Count the frequency of each value in the list.
2. The value with the highest frequency is the mode.

## Using Python max()

max(players, key=func)

The max() function is used to get the maximum out of an iterable.

>>> myList = [10, 20, 20, 30, 30 ,30, 40] >>> print(max(set(myList), key=myList.count)) 30

## Using statistics.mode()

The statistics.mode() function is employed to retrieve the most frequently occurring data point within discrete or nominal data. In Python 3.4 and beyond, the statistics.mode method is readily available, rendering the process straightforward:

>>> from statistics import mode >>> myList = [10, 20, 20, 30, 30 ,30, 40] >>> print(mode(myList)) 30

This function is designed to raise a StatisticsError if the dataset is devoid of data or when multiple modes are detected. Yet, in more recent Python versions, when multiple modes exist within a sequence, the smallest element among them is deemed the mode.

## Using collections.Counter()

A Counter is a specialized dictionary subclass used for tallying hashable objects. It is available within the collections package and offers a mode-like function. This facilitates counting occurrences of elements and determining the most common values within a dataset.

>>> from collections import Counter >>> myList = [10, 20, 20, 30, 30 ,30, 40] >>> mData = Counter(myList) >>> print(mData.most_common()) >>> print(mData.most_common(1))
Output: [(30, 3), (20, 2), (10, 1), (40, 1)] [(30, 3)]

## Finding mod without using Python library

Following Python program finding the mode of a list without using any Python library.

def findMode(inList): modeList = {} for item in inList: if item in modeList: modeList[item] += 1 else: modeList[item] = 1 return [key for key in modeList.keys() if modeList[key] == max(modeList.values())] myList = [10, 20, 20, 30, 30 ,30, 40] print(findMode(myList))
Output: 30

### Conclusion

To determine the mode in a list using Python, you can employ various methods. The statistics.mode() function, available in Python 3.4 and newer versions, returns the most frequent data point, while the Counter class from the collections package is useful for counting occurrences and identifying the mode. In cases with multiple modes, the smallest element is considered the mode in recent Python versions.