pandas.DataFrame.reorder_levels — pandas 3.0.0rc0+34.g04a554c9f1 documentation (original) (raw)

DataFrame.reorder_levels(order, axis=0)[source]#

Rearrange index or column levels using input order.

May not drop or duplicate levels.

Parameters:

orderlist of int or list of str

List representing new level order. Reference level by number (position) or by key (label).

axis{0 or ‘index’, 1 or ‘columns’}, default 0

Where to reorder levels.

Returns:

DataFrame

DataFrame with indices or columns with reordered levels.

Examples

data = { ... "class": ["Mammals", "Mammals", "Reptiles"], ... "diet": ["Omnivore", "Carnivore", "Carnivore"], ... "species": ["Humans", "Dogs", "Snakes"], ... } df = pd.DataFrame(data, columns=["class", "diet", "species"]) df = df.set_index(["class", "diet"]) df species class diet Mammals Omnivore Humans Carnivore Dogs Reptiles Carnivore Snakes

Let’s reorder the levels of the index:

df.reorder_levels(["diet", "class"]) species diet class Omnivore Mammals Humans Carnivore Mammals Dogs Reptiles Snakes