pandas.MultiIndex.remove_unused_levels#

MultiIndex.remove_unused_levels()[источник]#

Создать новый MultiIndex из текущего, удаляя неиспользуемые уровни.

Неиспользуемые уровни означают уровни, которые не выражены в метках. Результирующий MultiIndex будет иметь тот же внешний вид, то есть те же .values и порядок. Он также будет .equals() исходному.

Возвращает:
MultiIndex

Примеры

>>> mi = pd.MultiIndex.from_product([range(2), list('ab')])
>>> mi
MultiIndex([(0, 'a'),
            (0, 'b'),
            (1, 'a'),
            (1, 'b')],
           )
>>> mi[2:]
MultiIndex([(1, 'a'),
            (1, 'b')],
           )

0 из первого уровня не представлен и может быть удален

>>> mi2 = mi[2:].remove_unused_levels()
>>> mi2.levels
FrozenList([[1], ['a', 'b']])