在多索引的第一层融化,将第二层保留为列

时间:2018-11-22 15:25:54

标签: python pandas

我有以下数据框,在某些列上具有多重索引(日期,类别):

|       | 1.2016 | 1.2016 | 1.2016 | 1.2016 | 1.2016 | 2.2016 | 2.2016 | 2.2016 | 2.2016 | 2.2016 | Unnamed: 0_level_1 | Unnamed: 1_level_1 | Unnamed: 5_level_1 | 
|-------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------------------|--------------------|--------------------| 
|       | foo    | bar    | turtl  | truck  | phon   | foo    | bar    | turtl  | truck  | phon   | Unnamed: 0_level_0 | Unnamed: 1_level_0 | Unnamed: 5_level_0 | 
| PIZZA | 4      | 5      | 6      | 7      | 8      | 9      | 10     | 11     | 12     | 13     | 424242             | TOP_PIZZA          | 15                 | 
| PIZZA | 5      | 6      | 7      | 8      | 9      | 10     | 11     | 12     | 13     | 14     | 424243             | TOP_PIZZA          | 15                 | 
| PIZZA | 0      | 1      | 2      | 3      | 4      | 5      | 6      | 7      | 8      | 9      | 424244             | TOP_PIZZA          | 15                 | 
| PIZZA | 3      | 4      | 5      | 6      | 7      | 8      | 9      | 10     | 11     | 12     | 424245             | TOP_PIZZA          | 15 

            | 

另一列有一个空的多重索引,但我想保留它们。 我想融合我的数据框(嗯,融合似乎在做一些接近我想要的事情)以基本上具有此类条目:

|         |     |       |       |      |        | Unnamed: 0_level_1 | Unnamed: 1_level_1 | Unnamed: 5_level_1 |       | 
|---------|-----|-------|-------|------|--------|--------------------|--------------------|--------------------|-------| 
|     foo | bar | turtl | truck | phon | date   | Unnamed: 0_level_0 | Unnamed: 1_level_0 | Unnamed: 5_level_0 |       | 
|     9   | 10  | 11    | 12    | 13   | 2.2016 | 424242             | TOP_PIZZA          | 15                 | PIZZA | 
|     10  | 11  | 12    | 13    | 14   | 2.2016 | 424243             | TOP_PIZZA          | 15                 | PIZZA | 
|     5   | 6   | 7     | 8     | 9    | 2.2016 | 424244             | TOP_PIZZA          | 15                 | PIZZA | 
|     8   | 9   | 10    | 11    | 12   | 2.2016 | 424245             | TOP_PIZZA          | 15                 | PIZZA | 
|     4   | 5   | 6     | 7     | 8    | 1.2016 | 424242             | TOP_PIZZA          | 15                 | PIZZA | 
|     5   | 6   | 7     | 8     | 9    | 1.2016 | 424243             | TOP_PIZZA          | 15                 | PIZZA | 
|     0   | 1   | 2     | 3     | 4    | 1.2016 | 424244             | TOP_PIZZA          | 15                 | PIZZA | 
|     3   | 4   | 5     | 6     | 7    | 1.2016 | 424245             | TOP_PIZZA          | 15                 | PIZZA | 

我试图将col_level参数修改为0或1,但是我从没有得到想要的结果。我还尝试将第一级的列传递给value_vars参数,但那里也没有成功。

你有什么主意吗?

0 个答案:

没有答案