首页 > 解决方案 > 如何将熊猫数据帧的第一个标头转换为保持相同 ID 的行

问题描述

我有一个带有两个标题的 excel 文件,如下所示:

ID           Jan              Feb          Mar
         A         B        A      B     A     B
1123     10        22      233     2     4     22     
1198      9         4       44    23    34     5     
101       3         6        3    43    33     34 

在 Pandas 中导入此 xlsx 时,如下所示

     ID     Jan     Unnamed: 1   Feb     Unnamed: 2     Mar     Unnamed:3
              A         B          A         B            A          B 
    1123     10        22         233        2            4         22     
    1198      9         4         44        23           34          5     
    101       3         6          3        43           33         34 

我想要在python中的输出如下

 ID      Date         A          B
1123      Jan        10         22          
1198      Jan         9          4       
 101      Jan         3          6  
1123      Feb       233          2
1198      Feb        44         23
 101      Feb         3         43
  .
  .

标签: pythonexcelpandas

解决方案


read_excelheader=[0,1]forMultiIndexIDto index byindex_col和 nreshape by 一起使用DataFrame.stack

pd.read_excel('file', header=[0,1], index_col=0).stack(0).reset_index()

推荐阅读