Python - 疊加 Pandas DataFrame 中的多層列


要疊加多層列,請使用 stack() 方法。首先,匯入所需的庫 −

import pandas as pd

建立多層列 −

items = pd.MultiIndex.from_tuples([('Maths', 'Mental Maths'),('Maths', 'Discrete Mathematics'),('Maths', 'Applied Mathematics')])

現在,建立一個 DataFrame 並設定我們上面設定的多層列 −

dataFrame = pd.DataFrame([[67, 86, 78], [56, 92, 97], [92, 95, 91]],index=['John', 'Tom', 'Henry'],columns=items)

疊加多層列 −

dataframe.stack()

示例

以下為完整程式碼 −

import pandas as pd

# multi-level columns
items = pd.MultiIndex.from_tuples([('Maths', 'Mental Maths'),('Maths', 'Discrete Mathematics'),
('Maths', 'Applied Mathematics')])

# creating a DataFrame
dataFrame = pd.DataFrame([[67, 86, 78], [56, 92, 97], [92, 95, 91]],index=['John', 'Tom', 'Henry'],columns=items)

# DataFrame
print"DataFrame...\n",dataFrame

# stack multi-level columns
print"\nStacking...\n",dataFrame.stack()

輸出

這將生成以下輸出 −

DataFrame...
           Maths
      Mental Maths  Discrete Mathematics  Applied Mathematics
John            67                    86                   78
Tom             56                    92                   97
Henry           92                    95                   91

Stacking...
                            Maths
John   Applied Mathematics     78
       Discrete Mathematics    86
       Mental Maths            67
Tom    Applied Mathematics     97
       Discrete Mathematics    92
       Mental Maths            56
Henry  Applied Mathematics     91
       Discrete Mathematics    95
       Mental Maths            92

更新於:22-9 月-2021

2 千 + 瀏覽

助力您的 職業

完成課程獲得認證

開始學習
廣告
© . All rights reserved.