pandas.MultiIndex#

class pandas.MultiIndex(levels=None, codes=None, sortorder=None, names=None, dtype=None, copy=False, name=None, verify_integrity=True)[源代码]#

pandas 对象的多个级别或分层索引对象。

Parameters:
levels序列数组

每个级别的唯一标签。

codes序列数组

每个级别的整数,指示每个位置的标签。

sortorder可选整数

排序级别(必须按该级别进行词典排序)。

names可选对象序列

每个索引级别的名称。(出于兼容性考虑接受 name)。

copybool,默认 False

复制元数据。

verify_integritybool, default True

检查级别/代码的一致性和有效性。

参见

MultiIndex.from_arrays

将数组列表转换为 MultiIndex。

MultiIndex.from_product

从可迭代对象的笛卡尔积创建 MultiIndex。

MultiIndex.from_tuples

将元组列表转换为 MultiIndex。

MultiIndex.from_frame

从 DataFrame 创建 MultiIndex。

Index

pandas Index 的基类。

Notes

有关更多信息,请参阅 user guide

Examples

通常使用辅助方法 MultiIndex.from_arrays()MultiIndex.from_product()MultiIndex.from_tuples() 来构造新的 MultiIndex。例如(使用 .from_arrays):

>>> arrays = [[1, 1, 2, 2], ['red', 'blue', 'red', 'blue']]
>>> pd.MultiIndex.from_arrays(arrays, names=('number', 'color'))
MultiIndex([(1,  'red'),
            (1, 'blue'),
            (2,  'red'),
            (2, 'blue')],
           names=['number', 'color'])

有关如何构造 MultiIndex 的更多示例,请参阅上述辅助方法的文档字符串。

Attributes

names 

MultiIndex 中级别的名称。

levels 

MultiIndex 的级别。

nlevels 

此 MultiIndex 中的级别数。

levshape 

一个包含各层长度的元组。

dtypes

返回底层 MultiIndex 的 dtypes 作为 Series。

codes

Methods

from_arrays (arrays[, sortorder, names])

将数组转换为 MultiIndex。

from_tuples (tuples[, sortorder, names])

将元组列表转换为 MultiIndex。

from_product (iterables[, sortorder, names])

从多个可迭代对象的笛卡尔积创建 MultiIndex。

from_frame (df[, sortorder, names])

从 DataFrame 创建 MultiIndex。

set_levels (levels, *[, level, verify_integrity])

在 MultiIndex 上设置新的层。

set_codes (codes, *[, level, verify_integrity])

在 MultiIndex 上设置新的编码。

to_frame ([index, name, allow_duplicates])

创建一个 DataFrame,其中 MultiIndex 的层作为列。

to_flat_index ()

将 MultiIndex 转换为包含层值的元组的 Index。

sortlevel ([level, ascending, ...])

在请求的层上对 MultiIndex 进行排序。

droplevel ([level])

返回删除了所请求级别(们)的索引。

swaplevel ([i, j])

交换层 i 和层 j。

reorder_levels (order)

使用输入顺序重排层。

remove_unused_levels ()

从当前 MultiIndex 创建一个新的 MultiIndex,移除未使用的层。

get_level_values (level)

返回请求层的标签值向量。

get_indexer (target[, method, limit, tolerance])

根据当前索引为新索引计算索引器和掩码。

get_loc (key)

获取标签或标签元组的位置。

get_locs (seq)

获取标签序列的位置。

get_loc_level (key[, level, drop_level])

获取请求标签/层的索引位置和切片。

drop (codes[, level, errors])

创建一个新的 pandas.MultiIndex ,删除传入的编码列表。