在 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中文網其他相關文章!