Signup/Sign In

Pandas DataFrame droplevel() Method

In this tutorial, we will learn the Python pandas DataFrame.droplevel() method. It returns DataFrame with requested index / column level(s) removed. The below shows the syntax of the DataFrame.droplevel() method.

Syntax

DataFrame.droplevel(level, axis=0)

Parameters

level: int, str, or list-like. If a string is given, must be the name of a level. If list-like, elements must be names or positional indexes of levels.

axis:{0 or ‘index’, 1 or ‘columns’}, default 0. Axis along which the level(s) is removed:

  • 0 or ‘index’: remove level(s) in the column.

  • 1 or ‘columns’: remove level(s) in a row.

Example 1: Dropping level using the DataFrame.droplevel() Method

The DataFrame.droplevel() method drops the specified level in the DataFrame along the row axis. The below example shows the same.

import pandas as pd
df = pd.DataFrame([[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]]).set_index([0, 1]).rename_axis(['a', 'b'])
df.columns = pd.MultiIndex.from_tuples([('c', 'e'), ('d', 'f')], names=['level_1', 'level_2'])
print(df)
print("-----After dropping the specified level------")
print(df.droplevel('a'))

Once we run the program we will get the following output.


level_1 c d
level_2 e f
a b
1 2 3 4
5 6 7 8
9 10 11 12
-----After dropping the specified level------
level_1 c d
level_2 e f
b
2 3 4
6 7 8
10 11 12

Example 2: Dropping level using the DataFrame.droplevel() Method

The DataFrame.droplevel() method drops the specified level in the DataFrame along the row axis. The below example shows the same.

import pandas as pd
df = pd.DataFrame([[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]]).set_index([0, 1]).rename_axis(['a', 'b'])
df.columns = pd.MultiIndex.from_tuples([('c', 'e'), ('d', 'f')], names=['level_1', 'level_2'])
print(df)
print("-----After dropping the specified level------")
print(df.droplevel(1))

Once we run the program we will get the following output.


level_1 c d
level_2 e f
a b
1 2 3 4
5 6 7 8
9 10 11 12
-----After dropping the specified level------
level_1 c d
level_2 e f
a
1 3 4
5 7 8
9 11 12

Example 3: Dropping level using the DataFrame.droplevel() Method

The DataFrame.droplevel() method drops the specified level in the DataFrame along the column axis. The below example shows the same.

import pandas as pd
df = pd.DataFrame([[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]]).set_index([0, 1]).rename_axis(['a', 'b'])
df.columns = pd.MultiIndex.from_tuples([('c', 'e'), ('d', 'f')], names=['level_1', 'level_2'])
print(df)
print("-----After dropping the specified level------")
print(df.droplevel('level_2', axis=1))

Once we run the program we will get the following output.


level_1 c d
level_2 e f
a b
1 2 3 4
5 6 7 8
9 10 11 12
-----After dropping the specified level------
level_1 c d
a b
1 2 3 4
5 6 7 8
9 10 11 12

Conclusion

In this tutorial, we learned the Python pandas DataFrame.droplevel() method. We learned the syntax, parameters and we solved examples by applying this method to the DataFrame and understood the example.



About the author:
I am the founder of Studytonight. I like writing content about C/C++, DBMS, Java, Docker, general How-tos, Linux, PHP, Java, Go lang, Cloud, and Web development. I have 10 years of diverse experience in software development.

Want to learn coding and don't know where to start?

Try out our Interactive Courses for Free 🥳 😯 🤩
learn to code footer Ad