看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
pandas.Index 是 pandas 库中的一个对象,表示轴标签的不可变序列。它是 pandas 数据结构的基础组件,用于行和列的标签。
它的特点如下:
pandas.Index 是用于表示轴标签的一种不可变序列。可以通过多种方式构造和实例化 pd.Index 对象。
语法如下:
class pandas.Index(data=None,
dtype=None,
copy=False,
name=None,
tupleize_cols=True
)
参数:
示例:
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 对象构造
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 的索引构造 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)
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)
# 从 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)
RangeIndex 是一种特殊的 Index,用于表示范围索引,通常用于连续的整数索引。
# 创建 RangeIndex
range_index = pd.RangeIndex(start=0, stop=10, step=1)
print(range_index)
Index 对象具有许多方法和属性,例如 append()、delete()、intersection()、union()、difference()、name、dtype 等。
属性:
方法:
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)
更新时间:2024-07-12 08:51:19 标签:pandas python index 索引