pandas.MultiIndex.get_level_values#

MultiIndex.get_level_values(level)[源代码]#

返回请求级别的标签值的向量。

返回向量的长度等于索引的长度。

参数
level整型或字符串

level 是级别在多重索引中的整数位置,或者是级别的名称。

退货
values索引

值是此多重索引的级别转换为单个 Index (或其子类)。

注意事项

如果级别包含缺少的值,则可能会将结果强制转换为 float 将缺少的值指定为 NaN 。这是因为级别被转换为常规级别 Index

示例

创建多重索引:

>>> mi = pd.MultiIndex.from_arrays((list('abc'), list('def')))
>>> mi.names = ['level_1', 'level_2']

通过以整数或名称形式提供Level来获取Level值:

>>> mi.get_level_values(0)
Index(['a', 'b', 'c'], dtype='object', name='level_1')
>>> mi.get_level_values('level_2')
Index(['d', 'e', 'f'], dtype='object', name='level_2')

如果某个级别包含缺少的值,则该级别的返回类型可能会强制转换为 float

>>> pd.MultiIndex.from_arrays([[1, None, 2], [3, 4, 5]]).dtypes
level_0    int64
level_1    int64
dtype: object
>>> pd.MultiIndex.from_arrays([[1, None, 2], [3, 4, 5]]).get_level_values(0)
Float64Index([1.0, nan, 2.0], dtype='float64')