Pandas – Check if all values in a Column are Equal

This article will discuss how to check if all values in a DataFrame Column are the same.

First of all, we will create a DataFrame from a list of tuples,

import pandas as pd

# List of Tuples
students = [('jack',    34, 'Sydney',   'Australia', 100),
            ('Riti',    30, 'Delhi',    'India',     100),
            ('Vikas',   31, 'Mumbai',   'India',     100),
            ('Neelu',   32, 'Bangalore','India',     100),
            ('John',    16, 'New York',  'US',       100),
            ('Mike',    17, 'las vegas', 'US',       100)]

# Create a DataFrame object
df = pd.DataFrame( students,
                   columns=['Name', 'Age', 'City', 'Country', 'Budget'],
                   index=['a', 'b', 'c', 'd', 'e', 'f'])

# Display the DataFrame
print(df)

Output:

    Name  Age       City    Country  Budget
a   jack   34     Sydney  Australia     100
b   Riti   30      Delhi      India     100
c  Vikas   31     Mumbai      India     100
d  Neelu   32  Bangalore      India     100
e   John   16   New York         US     100
f   Mike   17  las vegas         US     100

This DataFrame has six rows and five columns.

Check if all values are equal in a column

We can compare and check if all column values are equal to the first value of that column, then it means all values in that column are equal. The steps to do this is as follows,

  • Select the column by name using subscript operator of DataFrame i.e. df[‘column_name’]. It gives the column contents as a Pandas Series object.
  • Compare the Series object (selected column) with the first value. It will return a boolean Series.
  • Check if all values in the boolean Series are True or not. If yes, then it means all values in the column are equal.

For example, let’s check if all values are the same in column ‘Budget’ from the above created DataFrame,

# Check if all values are same in column 'Budget'
if (df['Budget'] == df['Budget'][0]).all():
    print("All values are equal in column 'Budget'")
else:
    print("All values are not equal  in column 'Budget'")

Output:

All values are equal in column 'Budget'

We compared the first value of column ‘Budget’, with all the other column values and got a Boolean Series object. Then using the all() function of the Series object, we checked if all the values in Boolean Series are True or not. If all values are true, all values in that column are equal.

In this example, the ‘Budget’ column had equal values; therefore, the returned boolean Series had all True values and the Series.all() function returned True in this case. Let’s check out a negative example,

Let’s check if all values are equal in column ‘Age’ in the above created DataFrame,

# Check if all values are same in column 'Age'
if (df['Age'] == df['Age'][0]).all():
    print("All values are equal in column 'Age'")
else:
    print("All values are not equal  in column 'Age'")

Output:

All values are not equal  in column 'Age'

In this example, the ‘Age’ column had different values; therefore, the returned boolean Series had some True and few False values, and the Series.all() function returned False in this case. It means that all values in column ‘Age’ are not equal.

Summary:

We learned about different ways to check if all the values in a DataFrame column are equal or not.

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top