pandas.DataFrame.reorder_levels — pandas 2.2.3 documentation (original) (raw)

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

Rearrange index 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

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