pandas中关于set_index和reset_index的用法
程序员文章站
2022-06-03 18:54:34
...
1.set_index
DataFrame可以通过set_index方法,可以设置单索引和复合索引。
DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)
append添加新索引,drop为False,inplace为True时,索引将会还原为列
创建一个Dataframe类型
# coding=utf-8
import pandas as pd
dates = pd.DataFrame(columns=['a','b','c','d'],index=range(0,4))
data = pd.DataFrame({
'a':['bar','bar2','foo','foo2'],
'b':['one','two','one','two'],
'c':['z','y','x','w'],
'd':['1.0','2.0','3.0','4.0']
})
print(data)
#运行结果
a b c d
0 bar one z 1.0
1 bar two y 2.0
2 foo one x 3.0
3 foo two w 4.0
indexed1 = data.set_index('c') #设置单一索引
print(indexed1)
#运行结果
a b d
c
z bar one 1.0
y bar two 2.0
x foo one 3.0
w foo two 4.0
indexed2 = data.set_index(['a', 'b']) #设置复合索引
print(indexed2)
#设置复合索引
c d
a b
bar one z 1.0
two y 2.0
foo one x 3.0
two w 4.0
重复索引不再显示,所以bar,foo出现一次,但是one,two却出现两次,说明相邻两列如果序列名字相同则去重复列名
2.reset_index
reset_index可以还原索引,重新变为默认的整型索引
DataFrame.reset_index(level=None, drop=False, inplace=False, col_level=0, col_fill=”)
level控制了具体要还原的那个等级的索引
drop为False则索引列会被还原为普通列,否则会丢失
indexed3=data.reset_index()
print(indexed3)
#运行结果
index a b c d
0 0 bar one z 1.0
1 1 bar two y 2.0
2 2 foo one x 3.0
3 3 foo two w 4.0
上一篇: (六)网关
推荐阅读
-
Pandas中关于数据索引iloc()和loc()的用法和区别
-
Ruby编程中关于中断和返回的用法教程
-
orcale中关于exists和in的用法举例说明
-
pandas中关于set_index和reset_index的用法
-
html中关于a标签href和onclick的用法区别以及优先级别的示例详解
-
Pandas中关于数据索引iloc()和loc()的用法和区别
-
在Java学习过程中需要积累下来的一些编程思路和方法——关于TextArea的用法和内部元素编辑
-
thinkphp中关于include的正确理解和用法
-
JS中的关于call()和apply()的用法小结
-
Ruby编程中关于中断和返回的用法教程