Python Pandas - 从 MultiIndex 获取具有每级长度的元组

pythonserver side programmingprogramming更新于 2026/1/20 11:24:17

要从 MultiIndex 获取具有每级长度的元组,请使用 Pandas 中的 MultiIndex.levshape 属性。

首先,导入所需的库 −

import pandas as pd

MultiIndex 是 pandas 对象的多级或分层索引对象。创建数组 −

arrays = [[1, 2, 3, 4, 5], ['John', 'Tim', 'Jacob', 'Chris', 'Keiron']]

"names" 参数设置每个索引级别的名称。 from_arrays() 用于创建 Multiindex −

multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))

获取一个包含每个级别长度的元组 −

print("\n包含 Multi-index 中每个级别长度的元组...\n",multiIndex.levshape)

示例

以下是代码 −

import pandas as pd

# MultiIndex 是一个多级或分层的 pandas 对象索引对象
# 创建数组
arrays = [[1, 2, 3, 4, 5], ['John', 'Tim', 'Jacob', 'Chris', 'Keiron']]

# "names"参数设置每个索引级别的名称
# from_arrays() ui 用于创建多索引
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))

# 显示多索引
print("The Multi-index...\n",multiIndex)

# 获取多索引中的整数级别数
print("\nThe number of levels in Multi-index...\n",multiIndex.nlevels)

# 获取多索引中的级别
print("\nThe levels in Multi-index...\n",multiIndex.levels)

# 获取具有每个级别长度的元组
print("\nThe tuple with the length of each level in a Multi-index...\n",multiIndex.levshape)

输出

这将产生以下输出 −

The Multi-index...
MultiIndex([(1,   'John'),
            (2,    'Tim'),
            (3,  'Jacob'),
            (4,  'Chris'),
            (5, 'Keiron')],
            names=['ranks', 'student'])

The number of levels in Multi-index...
   2

The levels in Multi-index...
   [[1, 2, 3, 4, 5], ['Chris', 'Jacob', 'John', 'Keiron', 'Tim']]

The tuple with the length of each level in a Multi-index...
   (5, 5)

相关文章


有用资源