python的多个列建立多层次索引

 对于一个DataFrame,df,有时候我们需要把df的两个或多列设为这个df的层次索引,但是同时又希望保留这两列,这时要避免直接用df.index=df[['a','b']]这样的方式,因为这样赋值之后,df的index并不是一个层次索引,而是以列'a','b'组成的元组构成的单层次索引。要实现这样的多层次索引,有以下几种方式:

1、df.set_index(['a','b'],drop=False,inpalce=True)

2、df.index=df.set_index(['a','b']).index

3、df.index=pd.MultiIndex.from_frame(df[['a','b']],names=('new_a','new_b'))

————————————————

版权声明:本文为CSDN博主「S_o_l_o_n」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/S_o_l_o_n/article/details/90612100

你可能感兴趣的:(python的多个列建立多层次索引)