要获取MultiIndex中请求的标签/级别的位置和切片索引,请使用get_loc_level()Pandas中的方法。使用drop_level参数并将其设置为False以避免降低级别。
首先,导入所需的库-
import pandas as pdMultiIndex是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]))