pandasのDataFrameの「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
このデータフレームを、「A」列と「B」列をインデックスにして、「C」列と「D」列を値にして整形するには、以下のように「unstack()メソッド」を使用します。
df_unstack = df.unstack(level=[0,1])
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()メソッド」を使用することで、データフレームを特定の列や複数の列に基づいて透過的に整形することができます。