pandas索引和列相互转化set_index/reset_index

在pandas数据处理过程中,我们常需要将指定的列转化为索引,或者将索引转为列,如何实现呢?那就要用到set_index和reset_index这两个函数啦~

# 首先导入常用的两个包
import pandas as pd
import numpy as np
# 建立数据集
df = pd.DataFrame({'k1':['one','two','three'],'k2':[1.1,2.5,3]})
df['v1']=range(3)
df
    k1  k2  v1
0   a   10  0
1   b   2   1
2   c   3   2
1.将k1列设为索引
df.set_index('k1')
    k2  v1
k1      
a   10  0
b   2   1
c   3   2
# 如果想保留k1列,可通过参数drop=False来实现
df.set_index('k1',drop=False)
    k1  k2  v1
k1          
a   a   10  0
b   b   2   1
c   c   3   2
2.reset_index可以将索引转为列
df1=df.set_index('k1')
df1
# 结果:
    k2  v1
k1      
a   10  0
b   2   1
c   3   2

df1.reset_index()
# 结果:
    k1  k2  v1
0   a   10  0
1   b   2   1
2   c   3   2
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容