首页 文章资讯内容详情

Python Pandas - 获取请求标签/级别的位置和切片索引,但不降低级别

2026-06-03 1 花语

要获取MultiIndex中请求的标签/级别的位置和切片索引,请使用get_loc_level()Pandas中的方法。使用drop_level参数并将其设置为False以避免降低级别。

首先,导入所需的库-

import pandas as pd

MultiIndex是Pandas对象的多级或分层索引对象-

multiIndex = pd.MultiIndex.from_arrays([list(pqrrss), list(strvwx)],names=[One, Two])

显示多索引-

print("The MultiIndex...\n",multiIndex)

获取位置和切片索引。为了避免降低级别,我们使用了值为“False”的“drop_level”参数-

print("\nGet the location and sliced index (avoid dropping the level)...\n",multiIndex.get_loc_level(r, drop_level=False))

示例

以下是代码-

import pandas as pd #MultiIndexisamulti-level,orhierarchical,indexobjectforpandasobjects multiIndex = pd.MultiIndex.from_arrays([list(pqrrss), list(strvwx)],names=[One, Two]) #displaytheMultiIndex print("The MultiIndex...\n",multiIndex) #getthelevelsinMultiIndex print("\nThe levels in MultiIndex...\n",multiIndex.levels) #Getthelocationandslicedindex # To avoid dropping a level, we have used the "drop_level" parameterwithvalue "False" print("\nGet the location and sliced index (avoid dropping the level)...\n",multiIndex.get_loc_level(r, drop_level=False))输出结果

这将产生以下输出-

The MultiIndex... MultiIndex([(p, s), (q, t), (r, r), (r, v), (s, w), (s, x)], names=[One, Two]) The levels in MultiIndex... [[p, q, r, s], [r, s, t, v, w, x]] Get the location and sliced index (avoid dropping the level)... (slice(2, 4, None), MultiIndex([(r, r),(r, v)],names=[One, Two]))