Python 在pandas中的多级列上重置索引,以便索引越高,索引越低

Python 在pandas中的多级列上重置索引,以便索引越高,索引越低,python,pandas,Python,Pandas,我有一个类似于: df a b c d e f 1 . . . . 2 . . . . 3 . . . . 4 . . . . 结果是: df ac ad be bf 1 . . . . 2 . . . . 3 . . . . 4 . . . . 您可以在列级别上使用

我有一个类似于:

df   a       b
     c   d   e  f 
1    .   .   .  .
2    .   .   .  .
3    .   .   .  .
4    .   .   .  .
结果是:

 df  
       ac   ad  be  bf 
    1    .   .   .  .
    2    .   .   .  .
    3    .   .   .  .
    4    .   .   .  .

您可以在列级别上使用map和zip/join:

In [11]: df
Out[11]:
   a     b
   c  d  e  f
1  .  .  .  .
2  .  .  .  .
3  .  .  .  .
4  .  .  .  .

In [12]: df.columns.map(lambda x: "".join(*zip(*x)))
Out[12]: array(['ac', 'ad', 'be', 'bf'], dtype=object)

In [13]: df.columns = df.columns.map(lambda x: "".join(*zip(*x)))

In [14]: df
Out[14]:
  ac ad be bf
1  .  .  .  .
2  .  .  .  .
3  .  .  .  .
4  .  .  .  .
df.columns.map(“.join”)
就足够了,如下所示:

In [12]: df
Out[12]: 
   A        B      
   C  D  E  F  G  H
0  0  1  2  3  4  5
1  0  1  2  3  4  5
2  0  1  2  3  4  5
3  0  1  2  3  4  5
4  0  1  2  3  4  5
5  0  1  2  3  4  5

In [13]: df.columns = df.columns.map("".join)

In [14]: df
Out[14]: 
   AC  AD  AE  BF  BG  BH
0   0   1   2   3   4   5
1   0   1   2   3   4   5
2   0   1   2   3   4   5
3   0   1   2   3   4   5
4   0   1   2   3   4   5
5   0   1   2   3   4   5

给我这个错误:“TypeError:join()只接受一个参数(2个给定“@robertevansanders,*s是重要的。我只是复制粘贴你的代码,所以我使用了them@robertevansanders嗯,也许python2不允许多参数连接,试试
“”。连接(zip(*x))
我也在使用2.7!:(