Pandas 教程-设置索引
整理:python架构师
Pandas 中的 set_index() 方法用于将列表、Series 或 DataFrame 设置为数据框的索引。我们可以在创建数据框时设置索引列。但有时数据框是由两个或更多数据框组成的,然后可以使用此方法更改索引。
DataFrame.set_index(self, keys, drop=True, append=False, inplace=False, verify_integrity=False)
参数:
keys:标签、数组或标签/数组列表
它可以是单个列键、与调用数据框长度相同的单个数组,也可以是包含列键和数组的任意组合的列表。
drop:返回布尔值,默认值为 True。用于删除要用作新索引的列。
append:返回布尔值,默认值为 False。
它检查是否将列附加到现有索引。
inplace:返回布尔值,默认值为 False。
用于原地修改数据框。我们不需要创建新对象。
verify_integrity:返回布尔值,默认值为 False。
用于检查新索引是否存在重复值。否则,它将推迟检查,直到有必要。将其设置为 False 将提高此方法的性能。
返回:
它将更改行标签作为输出。
示例1:
import pandas as pdinfo = pd.DataFrame({'Name': ['William', 'Phill', 'Parker', 'Smith'],'Age': [32, 38, 41, 36],'id': [105, 132, 134, 127]})info
Name Age id0 William 32 1051 Phill 38 1322 Parker 41 1343 Smith 36 127
专属福利
info.set_index('month')
Age idNameWilliam 32 105Phill 38 132Parker 41 134Smith 36 127
示例2:
info.set_index(['Age', 'Name'])
Name idAge32 William 10538 Phill 13241 Parker 13436 Smith 127
示例3:
info.set_index([pd.Index([1, 2, 3, 4]), 'Name'])
Age idName1 William 32 1052 Phill 38 1323 Parker 41 1344 Smith 36 127
示例4:
使用两个 Series 创建 MultiIndex:
a = pd.Series([1, 2, 3, 4])info.set_index([a, a**2])
Name Age id1 1 William 32 1052 4 Phill 38 1323 9 Parker 41 1344 16 Smith 36 127
热门推荐