如何从python中的数据框中删除多索引?

Posted

技术标签:

【中文标题】如何从python中的数据框中删除多索引?【英文标题】:How to remove multi index from dataframe in python? 【发布时间】:2019-08-24 23:03:52 【问题描述】:

我有一个数据框

          purchase_count
Scrips     1STCUS  20MICRONS  21STCENMGM  3MINDIA
Client_id                   
A100027     NaN      NaN        NaN         NaN 
A100074     NaN      NaN        NaN         NaN 
A100077     NaN      NaN        NaN         NaN
A100088     NaN      NaN        NaN         NaN 
A100091     NaN      NaN        NaN         NaN

这个数据框是 pd.pivot_table 的结果,并被创建为多索引。df_matrix.columns 的输出也是

MultiIndex(levels=[['purchase_count'], ['1STCUS', '20MICRONS', '21STCENMGM', '3IINFOTECH', '3MINDIA']])

如何删除我希望输出的多索引

            1STCUS  20MICRONS  21STCENMGM  3MINDIA                  
A100027     NaN      NaN        NaN         NaN 
A100074     NaN      NaN        NaN         NaN 
A100077     NaN      NaN        NaN         NaN
A100088     NaN      NaN        NaN         NaN 
A100091     NaN      NaN        NaN         NaN

【问题讨论】:

你的 pivot_table 命令是什么? 【参考方案1】:

你可以使用MultiIndex.droplevel:

df.columns = df.columns.droplevel(0)

另一个解决方案应该改变pivot_table,显然在['purchase_count']周围删除[]

【讨论】:

以上是关于如何从python中的数据框中删除多索引?的主要内容,如果未能解决你的问题,请参考以下文章

python pandas:重命名多索引数据框中的单列标签

如何更改多索引数据框中的索引

如何使用单个索引更新多索引数据框中的记录

将多索引数据帧的索引值提取为python中的简单列表

如何应用于具有多索引列的数据框中的一组列

如何从多索引数据框中选择两个元素