将多索引DF的行转置为列
本文介绍了将多索引DF的行转置为列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个如下所示的df:
我希望为pid
和time
调换n
和n
的df行,每个i
之前:
之后:
因此,原来的pid
变为步骤1(我只能在转置之前重命名该列),然后将前面的pids
转置,以便它们保持它们的顺序(向上->向下)到(左->右)。删除带有时间的列也会很有帮助。
推荐答案
我们可以根据Level=0使用groupby cumcount
枚举组,作为索引的附加级别添加(set_index
使用append=True
添加到现有的多索引中),然后unstack
添加到列中:
new_df
:
要匹配显示的输出,请仅选择所需的列,然后展平多索引:
new_df
:
安装程序使用:
相关阅读Pandas Groupby / List to Multiple Rows
这篇关于将多索引DF的行转置为列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!