Pandas 如何融化和字典操作將寬資料框重塑為整齊的格式?

Patricia Arquette
發布: 2024-11-22 00:49:12
原創
798 人瀏覽過

How Can Pandas Melt and Dictionary Manipulation Reshape a Wide Dataframe into a Tidy Format?

Pandas Melt 函數:輕鬆重塑資料幀

Pandas Melt 函數是一個強大的工具,用於重塑資料幀,將寬資料轉換為長而整齊的格式。這使得數據更容易分析和操作。

問題:重塑資料框

考慮以下資料框和字典:

df = pd.DataFrame([[2, 4, 7, 8, 1, 3, 2013], [9, 2, 4, 5, 5, 6, 2014]], columns=['Amy', 'Bob', 'Carl', 'Chris', 'Ben', 'Other', 'Year'])

d = {'A': ['Amy'], 'B': ['Bob', 'Ben'], 'C': ['Carl', 'Chris']}
登入後複製

目標是將資料框重塑為附加列的整潔格式:

    Group   Name  Year  Value
0      A    Amy  2013      2
1      A    Amy  2014      9
2      B    Bob  2013      4
...
10  Other         2013      3
11  Other         2014      6
登入後複製

使用熔化和重塑字典

僅熔化函數無法完成轉換。為了獲得想要的結果,我們還需要操作字典:

m = pd.melt(df, id_vars=['Year'], var_name='Name')

d2 = {}
for k, v in d.items():
    for item in v:
        d2[item] = k

m['Group'] = m['Name'].map(d2)
登入後複製

處理“其他”值

最後,我們將“其他”從“名稱”列移動到“組”列:

mask = m['Name'] == 'Other'
m.loc[mask, 'Name'] = ''
m.loc[mask, 'Group'] = 'Other'
登入後複製

產生的資料框現在與所需的格式相符。融合函數與一些額外的操作相結合,提供了一種靈活有效的方式來重塑資料幀。

以上是Pandas 如何融化和字典操作將寬資料框重塑為整齊的格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板