pandas中set_index得用法
·
pandas 中的 set_index 方法用于将 DataFrame 中的一列或多列设置为索引。这在数据分析和处理中非常有用,特别是当你想要根据某列的值来重新组织或查询数据时。
以下是 set_index 方法的基本用法和一些示例:
DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)
keys:列标签或列标签列表。drop:默认为 True,表示将用作新索引的列从原始 DataFrame 中删除。如果设置为 False,则保留该列。append:默认为 False,表示将键追加到现有索引。如果为 True,则将键与现有索引连接在一起。inplace:默认为 False,表示返回一个新的 DataFrame。如果为 True,则直接在原始 DataFrame 上进行修改。verify_integrity:检查新索引是否有重复项。默认为 False。示例
- 单列作为索引
-
假设我们有一个包含 'Name' 和 'Age' 的 DataFrame,我们想要将 'Name' 列设置为索引:
import pandas as pd data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]} df = pd.DataFrame(data) # 使用 'Name' 列作为索引 df_indexed = df.set_index('Name') - 多列作为多级索引
-
你也可以使用多列来创建多级索引:
data = {'Country': ['USA', 'USA', 'China', 'China'], 'City': ['New York', 'Los Angeles', 'Beijing', 'Shanghai'], 'Population': [8000000, 4000000, 20000000, 25000000]} df = pd.DataFrame(data) # 使用 'Country' 和 'City' 列作为多级索引 df_multiindex = df.set_index(['Country', 'City']) print(df_multiindex) - 保留原始索引列
-
如果你想要保留原始索引列而不是删除它,可以将
drop参数设置为 False:df_indexed_with_name = df.set_index('Name', drop=False) print(df_indexed_with_name)
更多推荐


所有评论(0)