Pandas isin()

The isin() method in Pandas is used to filter data, checking whether each element in a DataFrame or Series is contained in values from another Series, list, or DataFrame.

Example

import pandas as pd

# create a sample DataFrame
data = {'A': [1, 2, 3, 4],
        'B': [5, 6, 7, 8]}

df = pd.DataFrame(data)

# select rows where DataFrame column 'A' is in the values list
result = df['A'].isin([2, 4])

# print the resulting boolean DataFrame
print(result)

'''
Output

0    False
1     True
2    False
3     True
Name: A, dtype: bool
'''

isin() Syntax

The syntax of the isin() method in Pandas is:

obj.isin(values)

isin() Argument

The isin() method takes the following argument:

  • values - a set of values which can be a list, Series, or DataFrame.

isin() Return Value

The isin() method returns a boolean DataFrame (or Series) showing whether each element in the object is contained in the specified values.


Example 1: Using isin() with a Series

import pandas as pd

# create a sample Series
series_data = pd.Series([1, 2, 3, 4, 5])

# checking elements in Series that are in the provided list
result = series_data.isin([1, 3, 5])

# print the resulting boolean Series
print(result)

Output

0     True
1    False
2     True
3    False
4     True
dtype: bool

In this example, the isin() method checks each value in the Series against the provided list, resulting in a boolean Series.


Example 2: DataFrame with Multiple Columns

import pandas as pd

# create a sample DataFrame
data = {'A': [1, 2, 3],
        'B': [4, 5, 6]}
df = pd.DataFrame(data)

# specify values to check in each column
values = {'A': [1, 3], 'B': [5, 6]}

# check if DataFrame elements are present in the specified values
result = df.isin(values)

print(result)

Output

       A      B
0   True  False
1  False   True
2   True   True

Here, we provided a dictionary to the isin() method, containing values to check for each column in the DataFrame.


Example 3: Entire DataFrame Comparison

import pandas as pd

# create two sample DataFrames
data = {'A': [1, 2, 3],
        'B': [4, 5, 6]}
df1 = pd.DataFrame(data)

data2 = {'A': [1, 2],
         'B': [4, 5]}
df2 = pd.DataFrame(data2)

# check whether df1 contains elements of df2
result = df1.isin(df2)

print(result)

Output

      A     B
0  True  True
1  True  True
2 False False

In this case, we used isin() to check if elements of one DataFrame (df1) are present in another DataFrame (df2).

Your builder path starts here. Builders don't just know how to code, they create solutions that matter.

Escape tutorial hell and ship real projects.

Try Programiz PRO
  • Real-World Projects
  • On-Demand Learning
  • AI Mentor
  • Builder Community