【问题标题】:Convert python pandas dataframe into different format将python pandas数据框转换为不同的格式
【发布时间】:2021-07-27 05:22:27
【问题描述】:

我在 python 中有一个数据框,我想转换为不同的格式:

下面是同样的例子:

当前数据框:

                  Header 1             Header 1 
              Col_A  Col_B         Col_A       Col_B
2021-07-15     1        2            3         4
2021-07-16     5        6            7         8

预期输出:

Date        Header_No   Col_A   Col_B
2021-07-15       1          1      2
2021-07-16       1          5      6
2021-07-15       2          3      4
2021-07-16       2          7      8

基本上我想要 4 列 Date , Header_No , Col_A, Col_B。

【问题讨论】:

    标签: python pandas sklearn-pandas


    【解决方案1】:

    这就是 .stack() 所做的:

    将规定级别从列堆叠到索引。

    通过一些调整来根据需要重命名列和/或索引级别和/或列:

    >>> stacked = df.rename(columns=lambda c: int(c.split()[-1]), level=0).stack(level=0)
    >>> stacked
                  Col_A  Col_B
    2021-07-15 1      1      2
               2      3      4
    2021-07-16 1      5      6
               2      7      8
    >>> stacked.rename_axis(['Date', 'Header_No']).reset_index()
             Date  Header_No  Col_A  Col_B
    0  2021-07-15          1      1      2
    1  2021-07-15          2      3      4
    2  2021-07-16          1      5      6
    3  2021-07-16          2      7      8
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-06
      • 2019-09-15
      • 2014-08-19
      • 1970-01-01
      • 2020-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多