pandas.IndexSlice#
- pandas.IndexSlice = <pandas.core.indexing._IndexSlice object>#
创建对象以更轻松地执行多索引切片。
参见
MultiIndex.remove_unused_levels
没有未使用级别的新多重索引。
注意事项
看见 Defined 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