Pandas 在索引和列上使用多索引重新索引

我有一个长数据框,其中包含以下格式的列:


id  gender  size    region_a_count  region_b_count  item_group

 x   m       x            x                x         x

 x   f       x            x                x         x

 x   f       x            x                x         x

 x   m       x            x                x         x

 x   f       x            x                x         x

 x   m       x            x                x         x   

性别、大小、item_group 和 region 的每个组合都是唯一的。因此无需执行聚合。


我想将索引和列重新索引到这种类型的输出,单元格值保持不变


                    region_a         region_b        region_c   

                    m        f       m        f      m         f

      (index of size)

item_group  1                       

            2                       

            3                       

item_group  1                       

            2                       

            3                       

也就是说,具有索引以及具有多索引的列。我能够通过调用来执行索引的部分:


df.groupby(["item_group","size"])

但是列问题仍然存在。


如何从现有数据帧创建列多索引?


慕斯709654
浏览 221回答 1
1回答

不负相思意

我相信你需要set_index有unstack:df1 = df.set_index(["item_group","size", "id","gender"]).unstack()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python