Python Pandas - 如何从多层次索引中获取特定层次的值
在 Pandas 中,使用 multiIndex.get_level_values() 方法可以从多层次索引中获取特定层次的值。
首先,导入需要的库 −
import pandas as pd
创建一个多层次索引。names 参数会为索引中的层次指定名称
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]], names=['a', 'b', 'c', 'd'])
从特定值中获取值。获取第 0 个层次的值 −
print("\nGet level value (0th level)...\n",multiIndex.get_level_values(0))
获取第 1 个层次的值 −
print("\nGet level value (1st level)...\n",multiIndex.get_level_values(1))示例
以下是代码 −
import pandas as pd
# Create a multi-index
# The names parameter sets the names for the levels in the index
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]],
names=['a', 'b', 'c', 'd'])
print("Multi-index...\n",multiIndex)
# get 0th level value
print("\nGet level value (0th level)...\n",multiIndex.get_level_values(0))
# get 1st level value
print("\nGet level value (1st level)...\n",multiIndex.get_level_values(1))
# dropping a level from the multiindex
print("\nDropping a level...\n",multiIndex.droplevel())输出
这将产生如下的输出 −
Multi-index... MultiIndex([( 5, 15, 25, 35), (10, 20, 30, 40)], names=['a', 'b', 'c', 'd']) Get level value (0th level)... Int64Index([5, 10], dtype='int64', name='a') Get level value (1st level)... Int64Index([15, 20], dtype='int64', name='b') Dropping a level... MultiIndex([(15, 25, 35), (20, 30, 40)], names=['b', 'c', 'd'])
广告
数据结构
数据结构
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP