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

2020-09-02  本文已影响0人  数据小白周红艳

在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
上一篇 下一篇

猜你喜欢

热点阅读