首頁 >後端開發 >Python教學 >如何展平 Pandas 中的分層列索引?

如何展平 Pandas 中的分層列索引?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-07 17:44:13767瀏覽

How to Flatten a Hierarchical Column Index in Pandas?

展平分層索引列

要展平Pandas DataFrame 欄位中的分層索引,請依照下列步驟操作:

1.將欄位設為頂層:

df.columns = df.columns.get_level_values(0)

這會將分層索引的頂層設定為新欄位名稱。

2.將MultiIndex 合併為單一索引(可選):

如果您想進一步將MultiIndex 合併為單一索引,可以執行下列操作:

df.columns = [' '.join(col).strip() for col in df.columns.values]

這將加入列名使用空格作為分隔符,去除任何前導或尾隨空格。

範例:

考慮以下在欄位中具有分層索引的DataFrame:

df = pd.DataFrame({'s_PC': [1, 0, 1], 's_CL': [0, 0, 10]},
                    index = pd.MultiIndex.from_tuples([
                        ('day', 1),('day', 2),('day', 3)
                    ]), columns = pd.MultiIndex.from_tuples([
                        ('USAF', ''),('WBAN', ''),('year', 1993)
                    ]))

應用扁平化操作:

# Set columns to top level
df.columns = df.columns.get_level_values(0)

# Join MultiIndex into single index
df.columns = [' '.join(col).strip() for col in df.columns.values]

輸出:

   USAF  WBAN  year  day  s_PC  s_CL
0   702   265  1993   1     1     0
1   702   265  1993   2     0     0
2   702   265  1993   3     1    10

輸出:

索引已被展平為單一索引。

以上是如何展平 Pandas 中的分層列索引?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn