How to display most frequent value in a Pandas series?

In this tutorial, we will learn how to display the most frequent value in a Pandas series. A Pandas Series is a one-dimensional labeled data structure that can hold different data types like integers, floats, and strings. The most frequent value is also known as the mode of the data.

Using value_counts() Method

The value_counts() method returns a Series with counts of each unique value sorted in descending order. The most frequent value appears first.

Syntax

counts = series.value_counts()
most_frequent = counts.index[0]

Example with Numbers

Let's find the most frequent number in a series ?

import pandas as pd

# Create a Series with repeated values
numbers = pd.Series([1, 2, 2, 3, 3, 3, 4])

# Get value counts and find most frequent
counts = numbers.value_counts()
print("Value counts:")
print(counts)
print("\nMost frequent value:", counts.index[0])
Value counts:
3    3
2    2
1    1
4    1
dtype: int64

Most frequent value: 3

Example with Names

Here's how to find the most frequent name from a list ?

import pandas as pd

# Create a Series of names
names = ['Jessica Rodriguez', 'Emily Davis', 'Michael Chen', 'Samantha Lee', 
         'Michael Chen', 'David Brown', 'Jessica Rodriguez', 'Emily Davis', 
         'Jessica Rodriguez', 'Jessica Rodriguez']

name_series = pd.Series(names)
name_counts = name_series.value_counts()

print("Most frequent name:", name_counts.index[0])
print("Frequency:", name_counts.iloc[0])
Most frequent name: Jessica Rodriguez
Frequency: 4

Using mode() Method

The mode() method directly returns the most frequent value(s). If there are multiple modes, it returns all of them.

Syntax

mode_value = series.mode()[0]

Example with Numbers

import pandas as pd

# Create a Series with repeated values
numbers = pd.Series([1, 2, 2, 3, 3, 3, 4])

# Find mode directly
mode_value = numbers.mode()[0]
print("The mode is:", mode_value)
The mode is: 3

Example with Birth Years

import pandas as pd

# Sample birth year data
birth_years = [1990, 1992, 1995, 1995, 1995, 1996, 1997, 1997, 2000, 2000]

year_series = pd.Series(birth_years)
most_common_year = year_series.mode()[0]

print("Most common birth year:", most_common_year)
Most common birth year: 1995

Handling Multiple Modes

When there are multiple values with the same highest frequency, mode() returns all of them ?

import pandas as pd

# Series with multiple modes
data = pd.Series([1, 1, 2, 2, 3])
modes = data.mode()

print("All modes:", modes.tolist())
print("Number of modes:", len(modes))
All modes: [1, 2]
Number of modes: 2

Comparison

Method Returns Best For
value_counts() Full frequency table When you need frequency counts
mode() Most frequent value(s) only Quick mode calculation

Conclusion

Use value_counts().index[0] when you need frequency information along with the mode. Use mode()[0] for a direct and simple approach to find the most frequent value.

Updated on: 2026-03-27T06:37:32+05:30

9K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements