Python dataframe如何设置index
作者:搬砖的Fish
这篇文章主要介绍了Python dataframe如何设置index,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
dataframe设置index
DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)
其中:keys是列标签或数组列表
drop
:删除要用作新索引的列,布尔值默认为Trueappend
:boolean是否将列附加到现有索引默认为False,inplace修改DataFrame(不要创建新对象)默认为Falseverify_integrity
:检查新索引是否有重复项默认为False。
示例:
In [ ]: df = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'], 'C': ['C0', 'C1', 'C2', 'C3'], 'D': ['D0', 'D1', 'D2', 'D3']}, index=[0, 1, 2, 3]) Out[ ]: A B C D 0 A0 B0 C0 D0 1 A1 B1 C1 D1 2 A2 B2 C2 D2 3 A3 B3 C3 D3
>>> df1= df.set_index(['A', 'B']) >>> df2 = df.set_index([[1, 2, 3,4]])
DataFrame.reset_index(level=None, drop=False, inplace=False, col_level=0, col_fill='')
level指仅从索引中删除给定的级别,默认情况下删除所有级别int,str,tuple或list,默认为None。drop确定索引列会是否还原为普通列
示例:
>>> df.reset_index()
重命名dataframe的index
方法1:直接赋值法
因为dataframe的index也是series格式的数据,所以直接指定index为一个新的series即可修改dataframe的index:
方法2:map
方法3:rename
通过rename传入一个函数可以批量替换index或rename:
也可以通过传入一个字典,指定修改index或column:
自定义map函数处理dataframe
map函数通过传入一个函数来对对象进行批量处理:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。