用法:
DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)
使用现有列设置 DataFrame 索引。
使用一个或多个现有的列或数组(具有正确的长度)设置DataFrame索引(行标签)。索引可以替换现有的索引,也可以在其上展开。
- keys:这个参数可以是单个列键、与调用DataFrame相同长度的单个数组,或者包含列键和数组的任意组合的列表。在这里,数组包括Series、Index、np.ndarray
- drop:删除要用作新索引的列。
- append:是否向现有索引追加列。
- inplace:如果为True,则就地修改DataFrame(不创建新对象)。
- verify_integrity:检查新索引是否有副本。
例子:
>>> import pandas as pd
>>> df = pd.DataFrame({'month': [1, 4, 7, 10],
... 'year': [2012, 2014, 2013, 2014],
... 'sale': [55, 40, 84, 31]})
>>> df
month year sale
0 1 2012 55
1 4 2014 40
2 7 2013 84
3 10 2014 31
>>> df.set_index('month') #将month列设置为索引
year sale
month
1 2012 55
4 2014 40
7 2013 84
10 2014 31
>>> df.set_index(['year', 'month']) #使用列 ‘year’ 和 ‘month’ 创建一个 MultiIndex(多层次
索引)
sale
year month
2012 1 55
2014 4 40
2013 7 84
2014 10 31
>>> df.set_index([pd.Index([1, 2, 3, 4]), 'year']) ##使用索引和列创建 MultiIndex
month sale
year
1 2012 1 55
2 2014 4 40
3 2013 7 84
4 2014 10 31
>>> s = pd.Series([1, 2, 3, 4])
>>> df.set_index([s, s**2]) ##使用两个系列创建一个 MultiIndex:
month year sale
1 1 1 2012 55
2 4 4 2014 40
3 9 7 2013 84
4 16 10 2014 31
参考:
Original: https://blog.csdn.net/Ajdidfj/article/details/123178391
Author: 小小白2333
Title: Python函数:set_index()
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/677169/
转载文章受原作者版权保护。转载请注明原作者出处!