如何在 Pandas 中將資料從寬格式重塑為長格式?

DDD
發布: 2024-11-16 14:57:03
原創
104 人瀏覽過

How to Reshape Data from Wide to Long Format in Pandas?

在 Pandas 中將資料從寬格式轉換為長格式

在 pandas 中,資料幀可以從寬格式轉換為長格式。當想要根據共享列和日期將資料框與另一個資料框合併時,這非常有用。

考慮以下資料框:

        AA  BB  CC
date
05/03     1   2   3
06/03     4   5   6
07/03     7   8   9
08/03     5   7   1
登入後複製

要將此資料框轉換為長格式,請使用pandas.melt 或pandas.DataFrame.melt.

df = pd.DataFrame({
    'date' : ['05/03', '06/03', '07/03', '08/03'],
    'AA' : [1, 4, 7, 5],
    'BB' : [2, 5, 8, 7],
    'CC' : [3, 6, 9, 1]
}).set_index('date')
登入後複製
To convert, reset the index and then melt:
登入後複製
df = df.reset_index()
pd.melt(df, id_vars='date', value_vars=['AA', 'BB', 'CC'])
登入後複製

或者,在.melt 之後使用.reset_index 來刪除指定value_vars 的需要。

dfm = df.melt(ignore_index=False).reset_index()
登入後複製

產生的資料幀將看起來像:

     date variable  value
0   05/03       AA      1
1   06/03       AA      4
2   07/03       AA      7
3   08/03       AA      5
4   05/03       BB      2
5   06/03       BB      5
6   07/03       BB      8
7   08/03       BB      7
8   05/03       CC      3
9   06/03       CC      6
10  07/03       CC      9
11  08/03       CC      1
登入後複製

以上是如何在 Pandas 中將資料從寬格式重塑為長格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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