pandas.IndexSlice #

熊猫。IndexSlice = <pandas.core.indexing._IndexSlice对象> #

创建一个对象可以更轻松地执行多索引切片。

也可以看看

MultiIndex.remove_unused_levels

新的多重索引,没有未使用的级别。

笔记

有关切片多重索引的更多信息,请参阅定义级别。

例子

>>> midx = pd.MultiIndex.from_product([['A0','A1'], ['B0','B1','B2','B3']])
>>> columns = ['foo', 'bar']
>>> dfmi = pd.DataFrame(np.arange(16).reshape((len(midx), len(columns))),
...                     index=midx, columns=columns)

使用默认切片命令:

>>> dfmi.loc[(slice(None), slice('B0', 'B1')), :]
           foo  bar
    A0 B0    0    1
       B1    2    3
    A1 B0    8    9
       B1   10   11

使用 IndexSlice 类获得更直观的命令:

>>> idx = pd.IndexSlice
>>> dfmi.loc[idx[:, 'B0':'B1'], :]
           foo  bar
    A0 B0    0    1
       B1    2    3
    A1 B0    8    9
       B1   10   11