pandas.Index#

class pandas.Index(data=None, dtype=None, copy=None, name=None, tupleize_cols=True)[源码]#

用于索引和对齐的不可变序列。

存储所有 pandas 对象轴标签的基本对象。

2.0.0 版本已更改: Index 现在可以包含所有 numpy 数值 dtype(float16 除外)。之前只接受 int64/uint64/float64 dtype。

参数:
data类数组(一维)

包含索引数据的类数组结构。这可能是一个 Python 列表、NumPy 数组或 pandas Series。

dtype字符串、numpy.dtype 或 ExtensionDtype,可选

输出 Index 的数据类型。如果未指定,将根据 data 推断。更多用法请参见 用户指南

copybool,默认为 None

是否复制输入数据,仅对数组、Series 和 Index 输入有效(对于其他输入,例如列表,总之会创建一个新数组)。对于数组输入,默认为 True,对于 Index/Series,默认为 False。设置为 False 时,请自行承担风险(如果您知道输入数据不会在其他地方被修改)。设置为 True 时,强制预先复制 Series/Index 输入。

name对象

存储在索引中的名称。

tupleize_cols布尔值(默认值:True)

当为 True 时,如果可能,尝试创建一个 MultiIndex。

另请参阅

RangeIndex

实现单调整数范围的 Index。

CategoricalIndex

Categorical 的 Index。

MultiIndex

多级或分层 Index。

IntervalIndex

Interval 的 Index。

DatetimeIndex

datetime64 数据的索引。

TimedeltaIndex

timedelta64 数据的 Index。

PeriodIndex

Period 数据的 Index。

注意

Index 实例 **只能** 包含可哈希对象。Index 实例 **不能** 包含 numpy float16 dtype。

示例

>>> pd.Index([1, 2, 3])
Index([1, 2, 3], dtype='int64')
>>> pd.Index(list("abc"))
Index(['a', 'b', 'c'], dtype='str')
>>> pd.Index([1, 2, 3], dtype="uint8")
Index([1, 2, 3], dtype='uint8')

属性

T

返回转置,按定义是自身。

array

支持此 Index 的数据的 ExtensionArray。

dtype

返回底层数据的 dtype 对象。

empty

指示 Index 是否为空。

has_duplicates

检查 Index 是否有重复值。

hasnans

如果存在任何 NaN,则返回 True。

inferred_type

返回从值推断出的类型字符串。

is_monotonic_decreasing

如果值相等或递减,则返回布尔值。

is_monotonic_increasing

如果值相等或递增,则返回布尔值。

is_unique

返回索引是否具有唯一值。

name

返回 Index 或 MultiIndex 的名称。

names

获取索引上的名称。

nbytes

返回底层数据的字节数。

ndim

底层数据的维度数,定义为 1。

nlevels

级别数。

shape

返回底层数据的 shape 元组。

size

返回底层数据的元素数量。

values

返回表示 Index 中数据的数组。

Methods

all(*args, **kwargs)

返回所有元素是否为真。

any(*args, **kwargs)

返回是否有任何元素为真。

append(other)

将一系列 Index 选项追加在一起。

argmax([axis, skipna])

返回 Index 中最大值的整数位置。

argmin([axis, skipna])

返回 Index 中最小值的整数位置。

argsort(*args, **kwargs)

返回将对索引进行排序的整数索引。

asof(label)

返回索引中的标签,如果不存在,则返回前一个标签。

asof_locs(where, mask)

返回索引中标签的位置(索引)。

astype(dtype[, copy])

创建具有转换为指定 dtype 的值的 Index。

copy([name, deep])

复制此对象。

delete(loc)

创建新的 Index,删除指定的 location(-s)

diff([periods])

计算 Index 对象中连续值之间的差值。

difference(other[, sort])

返回一个新的 Index,其中包含不在 other 中的 Index 元素。

drop(labels[, errors])

创建新的 Index,删除指定的标签列表。

drop_duplicates(*[, keep])

返回删除重复值的 Index。

droplevel([level])

返回移除指定 level(s) 的 Index。

dropna([how])

返回不含 NA/NaN 值的 Index。

duplicated([keep])

指示重复的索引值。

equals(other)

确定两个 Index 对象是否相等。

factorize([sort, use_na_sentinel])

将对象编码为枚举类型或分类变量。

fillna(value)

使用指定值填充 NA/NaN 值。

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

给定当前索引,计算新索引的 indexer 和 mask。

get_indexer_for(target)

保证即使在非唯一时也能返回 indexer。

get_indexer_non_unique(target)

给定当前索引,计算新索引的 indexer 和 mask。

get_level_values(level)

返回请求 level 的值的 Index。

get_loc(key)

获取请求标签的整数位置、切片或布尔掩码。

get_slice_bound(label, side)

计算与给定标签对应的切片边界。

groupby(values)

按给定值的数组对索引标签进行分组。

identical(other)

类似于 equals,但会检查对象属性和类型是否也相等。

infer_objects([copy])

如果 dtype 为 object,则尝试推断非 object dtype。

insert(loc, item)

在指定位置插入新项,创建新的 Index。

intersection(other[, sort])

形成两个 Index 对象的交集。

is_(other)

类似于 `is`,但更灵活、更快速,并且可以处理视图。

isin(values[, level])

返回一个布尔数组,其中索引值在 values 中。

isna()

检测缺失值。

isnull()

检测缺失值。

item()

将底层数据的第一个元素作为 Python 标量返回。

join(other, *[, how, level, ...])

计算 join_index 和 indexer 以使数据结构与新索引一致。

map(mapper[, na_action])

使用输入映射或函数映射值。

max([axis, skipna])

返回 Index 的最大值。

memory_usage([deep])

底层数据的内存使用情况。

min([axis, skipna])

返回 Index 的最小值。

notna()

检测存在的(非缺失)值。

notnull()

检测存在的(非缺失)值。

nunique([dropna])

返回对象中唯一元素的数量。

putmask(mask, value)

返回一个新 Index,其中值根据 mask 设置。

ravel([order])

返回对自身的视图。

reindex(target[, method, level, limit, ...])

使用 target 的值创建索引。

rename(name, *[, inplace])

更改 Index 或 MultiIndex 的名称。

repeat(repeats[, axis])

重复 Index 中的元素。

round([decimals])

将 Index 中的每个值四舍五入到指定的小数位数。

searchsorted(value[, side, sorter])

查找元素应插入以保持顺序的索引。

set_names(names, *[, level, inplace])

设置 Index 或 MultiIndex 的名称。

shift([periods, freq])

按指定的时间频率增量偏移索引。

slice_indexer([start, end, step])

为输入标签和步长计算切片 indexer。

slice_locs([start, end, step])

为输入标签计算切片位置。

sort_values(*[, return_indexer, ascending, ...])

返回索引的已排序副本。

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

为了与 Index API 的内部兼容性。

symmetric_difference(other[, result_name, sort])

计算两个 Index 对象的对称差。

take(indices[, axis, allow_fill, fill_value])

返回一个新 Index,包含由 indices 选择的值。

to_flat_index()

身份方法。

to_frame([index, name])

创建一个 DataFrame,其中包含一个包含 Index 的列。

to_list()

返回值的列表。

to_numpy([dtype, copy, na_value])

Series 或 Index 中值的 NumPy ndarray 表示形式。

to_series([index, name])

创建一个 Series,其中索引和值都等于索引键。

tolist()

返回值的列表。

transpose(*args, **kwargs)

返回转置,按定义是自身。

union(other[, sort])

形成两个 Index 对象的并集。

unique([level])

返回 Index 中的唯一值。

value_counts([normalize, sort, ascending, ...])

返回一个包含唯一值计数的 Series。

view([cls])

返回具有指定 dtype 的 Index 视图或新的 Index 实例。

where(cond[, other])

替换条件为 False 的值。