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'])