Pandas でワイド データを Long に再形成する
多くのデータ操作タスクでは、データセットが特定の形式である必要があります。データセットは、多くの場合、long または幅広いデータ。 pandas では、ワイドからロングへの再形成は、pd.melt 関数または DataFrame.melt 関数を通じて実現できます。
元のデータ:
次のワイド データフレームについて考えてみましょう。日付はインデックスであり、列はさまざまな変数を表します:
AA BB CC date 05/03 1 2 3 06/03 4 5 6 07/03 7 8 9 08/03 5 7 1
Long への再形成:
このデータフレームを Long 形式に再形成するには、各行が単一の日付と変数の組み合わせを使用できます:
df = df.reset_index().melt(id_vars='date')
これにより、データフレームが次のように変換されます:
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
または、reset_index ステップは、メルト関数:
dfm = df.melt(ignore_index=False)
これにより、行インデックス が変換されたデータフレームに確実に保持されます。
以上がPandas で幅の広いデータを長い形式に効率的に変換するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。