繁体   English   中英

从现有的分隔列名创建多索引 DataFrame

[英]Create a multiindex DataFrame from existing delimited column names

我有一个 pandas DataFrame 看起来像下面

           A_value A_avg B_value B_avg
date
2020-01-01       1     2      3      4
2020-02-01       5     6      7      8

我的目标是创建一个看起来像这样的多索引 Dataframe:

                 A            B
                 value avg    value  avg
date
2020-01-01       1     2      3      4
2020-02-01       5     6      7      8

所以'-'之前的列名部分应该是列索引的第一级,之后的部分应该是第二级。 第一部分是非结构化的,第二部分总是相同的(4 个结尾)。

我试图用pd.wide_to_long()解决它,但我认为这是错误的路径,因为我不想更改 df 本身。 真正的 df 要大得多,因此不能手动创建它。 我被困在这里,没有找到解决方案。

您可以按分隔符拆分列并展开以创建多索引:

df.columns=df.columns.str.split("_",expand=True)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM