簡體   English   中英

在 Python pandas 中展平 MultiIndex pivot 表

[英]Flattening MultiIndex pivot table in Python pandas

這是我的 pivot 表列結構(多索引):

      col2  col3  col4  sales

month                   month_1  month_2  month_3

我想將其展平為:

      col2  col3  col4  month_1  month_2  month_3

如果我做pivot.columns = pivot.columns.get_level_values(0) ,那么結果是:

      col2  col3  col4  sales  sales  sales

我該怎么辦?

我認為解決方案是在[sales][months] [] ] 如果僅以一列sales為軸心。

所以代碼是:

 pivot = (pd.pivot_table(df, 
                         index=['col2','col3','col4'],
                         columns='month', 
                         values='sales')
            .reset_index()
            .rename_axis(None, axis=1))

我會做這樣的事情,其中“pivot”是您的 pivot 表的名稱:

pivot_flat = pd.DataFrame(pivot.to_records())

這將使您的 pivot 表變平,以便您可以執行更強大的可視化或添加其他計算列和轉換。 從本質上講,你將從這個 go :

數據透視表

對此:

平面樞軸表

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM