pandas 的 pd.Index() 构造索引对象 |
您所在的位置:网站首页 › 苹果手机基本使用方法教程 › pandas 的 pd.Index() 构造索引对象 |
本内容来自:https://gairuo.com
看过来 《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。 本内容来自:https://gairuo.compandas.Index 是 pandas 库中的一个对象,表示轴标签的不可变序列。它是 pandas 数据结构的基础组件,用于行和列的标签。 特点它的特点如下: 不可变: 一旦创建,不能修改(可重复赋值索引修改)。这样保证了数据的一致性和安全性。 唯一性: 每个标签都是唯一的(可配置允许重复),防止重复数据。 支持多种类型: 支持整数、字符串、时间戳等多种类型。 多级索引: 支持多级索引(MultiIndex),方便处理多维数据。 构造pandas.Index 是用于表示轴标签的一种不可变序列。可以通过多种方式构造和实例化 pd.Index 对象。 语法语法如下: class pandas.Index(data=None, dtype=None, copy=False, name=None, tupleize_cols=True )参数: data: array-like (1-dimensional) 数据,用于构造索引对象的值。 dtype: NumPy dtype 或 str,可选,数据类型。如果没有指定,则根据输入数据推断。 copy: bool, 默认值为 False,如果为 True,复制输入数据。 name: object,可选,索引的名称,用于标识索引。 tupleize_cols: bool, 默认值为 True,如果为 True,使用 MultiIndex,假如 data 是嵌套元组列表。示例: import pandas as pd # 从列表构造 Index index = pd.Index([1, 2, 3, 4]) print(index) # 指定数据类型和名称 typed_index = pd.Index([1, 2, 3, 4], dtype='int64', name='my_index') print(typed_index) # 从另一个 Index 对象复制 new_index = pd.Index(index) print(new_index) # 从 pandas Series 的索引构造 Index series = pd.Series([10, 20, 30], index=['a', 'b', 'c']) index_from_series = pd.Index(series.index) print(index_from_series) 从列表或数组构造可以使用列表或数组来创建 Index 对象。 import pandas as pd # 从列表构造 index_from_list = pd.Index([1, 2, 3, 4]) print(index_from_list) # 从数组构造 index_from_array = pd.Index(['a', 'b', 'c', 'd']) print(index_from_array) 从另一个 Index 对象构造可以通过复制现有的 Index 对象来创建一个新的 Index 对象。 # 从现有的 Index 对象构造 new_index = pd.Index(index_from_list) print(new_index) 使用指定的数据类型和名称可以在创建 Index 对象时指定数据类型和名称。 # 指定数据类型和名称 typed_index = pd.Index([1, 2, 3, 4], dtype='int64', name='my_index') print(typed_index) 从 pandas Series 或 DataFrame 的索引构造可以从 pandas Series 或 DataFrame 的索引构造 Index 对象。 # 从 Series 的索引构造 series = pd.Series([10, 20, 30], index=['a', 'b', 'c']) index_from_series = pd.Index(series.index) print(index_from_series) # 从 DataFrame 的索引构造 dataframe = pd.DataFrame({'A': [1, 2, 3]}, index=['x', 'y', 'z']) index_from_dataframe = pd.Index(dataframe.index) print(index_from_dataframe) 创建 MultiIndexMultiIndex 是 Index 的一种扩展,用于表示多级索引。 # 从多个数组构造 MultiIndex arrays = [[1, 1, 2, 2], ['red', 'blue', 'red', 'blue']] multi_index = pd.MultiIndex.from_arrays(arrays, names=('number', 'color')) print(multi_index) # 从 tuples 构造 MultiIndex tuples = [(1, 'red'), (1, 'blue'), (2, 'red'), (2, 'blue')] multi_index_from_tuples = pd.MultiIndex.from_tuples(tuples, names=('number', 'color')) print(multi_index_from_tuples) 使用 RangeIndexRangeIndex 是一种特殊的 Index,用于表示范围索引,通常用于连续的整数索引。 # 创建 RangeIndex range_index = pd.RangeIndex(start=0, stop=10, step=1) print(range_index)Index 对象具有许多方法和属性,例如 append()、delete()、intersection()、union()、difference()、name、dtype 等。 常用属性和方法属性: dtype: 数据类型 name: 索引名称 nlevels: 多级索引的级数 is_unique: 判断是否唯一 hasnans: 判断是否包含缺失值方法: append(): 追加新元素 delete(): 删除指定位置的元素 drop(): 删除指定值的元素 intersection(): 计算两个索引的交集 union(): 计算两个索引的并集 difference(): 计算两个索引的差集 示例代码单层索引: import pandas as pd # 创建一个 Index 对象 index = pd.Index(['a', 'b', 'c', 'd']) # 查看索引名称 print(index.name) # 查看数据类型 print(index.dtype) # 计算交集 index2 = pd.Index(['b', 'c', 'e']) intersection = index.intersection(index2) print(intersection) 多级索引MultiIndex 是 Index 的扩展,支持多级索引,用于多维数据的标签。 # 创建 MultiIndex arrays = [[1, 1, 2, 2], ['red', 'blue', 'red', 'blue']] multi_index = pd.MultiIndex.from_arrays(arrays, names=('number', 'color')) print(multi_index) 参考 https://pandas.pydata.org/docs/reference/api/pandas.Index.html pd.Series() 创建 Series pandas 函数详细介绍 loc[] 查询数据行和列 >更新时间:2024-07-10 09:38:09 标签:pandas python index 索引 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |