ピボットのための DataFrame の転置
DataFrame のピボットとは、データの異なる表現を実現するために行と列を転置することを指します。 Pandas では、この目的のためにピボット メソッドを使用できます。
次の DataFrame を検討します:
Indicator Country Year Value 1 Angola 2005 6 2 Angola 2005 13 3 Angola 2005 10 4 Angola 2005 11 5 Angola 2005 5 1 Angola 2006 3 2 Angola 2006 2 3 Angola 2006 7 4 Angola 2006 3 5 Angola 2006 6
この DataFrame をピボットしてインジケーター値を新しい列として持つには:
out = df.pivot(columns = 'Country', 'Year', 'Indicator', values = 'Value') print(out)
これにより次の結果が得られます:
Indicator 1 2 3 4 5 Country Year Angola 2005 6 13 10 11 5 2006 3 2 7 3 6
アンピボット形式に戻すには:
print(out.rename_axis(columns=None).reset_index())
これにより次の結果が得られます:
Country Year 1 2 3 4 5 0 Angola 2005 6 13 10 11 5 1 Angola 2006 3 2 7 3 6
Using . pivot_table
重複するラベルの組み合わせが存在する場合、pivot_table を利用できます。デフォルトで平均値が計算されます:
out = df.pivot_table( index=['Country', 'Year'], columns='Indicator', values='Value') print(out.rename_axis(columns=None).reset_index())
結果:
Country Year 1 2 3 4 5 0 Angola 2005 6.0 13.0 10.0 11.0 5.0 1 Angola 2006 3.0 2.0 7.0 3.0 6.0
詳細については、再形成とピボット テーブルに関する Pandas ユーザー ガイドを参照してください。
以上がPandas で DataFrame を転置して行と列をピボットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。