pandas.MultiIndex.reorder_levels

MultiIndex.reorder_levels(order)[source]

Rearrange 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).

Returns:
MultiIndex

Examples

>>> mi = pd.MultiIndex.from_arrays([[1, 2], [3, 4]], names=['x', 'y'])
>>> mi
MultiIndex([(1, 3),
            (2, 4)],
           names=['x', 'y'])
>>> mi.reorder_levels(order=[1, 0])
MultiIndex([(3, 1),
            (4, 2)],
           names=['y', 'x'])
>>> mi.reorder_levels(order=['y', 'x'])
MultiIndex([(3, 1),
            (4, 2)],
           names=['y', 'x'])