【Pandas DataFrame】unstack()メソッドで、データフレームを多次元の表形式から一次元の表形式に変換することができます。

python

pandasのDataFrameの機能の一つに、unstack()メソッドがあります。このメソッドは、データフレームを多次元の表形式から一次元の表形式に変換することができます。

unstack()メソッドは、データフレームを指定したインデックスレベルを軸にして、行と列を入れ替えることで、多次元の表形式から一次元の表形式に変換します。

以下のようなデータフレームを例にとって、unstack()メソッドを使って変換する方法を説明します。

import pandas as pd
# データフレームを作成
df = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3'],
'C': ['C0', 'C1', 'C2', 'C3'],
'D': ['D0', 'D1', 'D2', 'D3']},
index=[0, 1, 2, 3])
print(df)
    A   B   C   D
0 A0 B0 C0 D0
1 A1 B1 C1 D1
2 A2 B2 C2 D2
3 A3 B3 C3 D3

上記のデータフレームを、インデックスレベルを軸にして行と列を入れ替えることで、多次元の表形式から一次元の表形式に変換します。

# unstack()メソッドを使って変換
df_unstack = df.unstack()
print(df_unstack)
A  0    A0
1 A1
2 A2
3 A3
B 0 B0
1 B1
2 B2
3 B3
C 0 C0
1 C1
2 C2
3 C3
D 0 D0
1 D1
2 D2
3 D3
dtype: object

上記のように、unstack()メソッドを使うことで、データフレームを多次元の表形式から一次元の表形式に変換することができます。

タイトルとURLをコピーしました