pandas.DataFrame.droplevel¶
- DataFrame.droplevel(level, axis=0)[source]¶
Return Series/DataFrame with requested index / column level(s) removed.
- Parameters
- levelint, 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 column.
1 or ‘columns’: remove level(s) in row.
For Series this parameter is unused and defaults to 0.
- Returns
- Series/DataFrame
Series/DataFrame with requested index / column level(s) removed.
Examples
>>> 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'])
>>> df level_1 c d level_2 e f a b 1 2 3 4 5 6 7 8 9 10 11 12
>>> df.droplevel('a') level_1 c d level_2 e f b 2 3 4 6 7 8 10 11 12
>>> df.droplevel('level_2', axis=1) level_1 c d a b 1 2 3 4 5 6 7 8 9 10 11 12