import pandas as pd
# MultiIndex Series 생성
data = pd.Series(
[1, 2, 3, 4],
index=pd.MultiIndex.from_tuples([
('A', 'one'),
('A', 'two'),
('B', 'one'),
('B', 'two')
], names=['first', 'second'])
)
print(data)
출력 결과
sql
Copy
Edit
first second
A one 1
two 2
B one 3
two 4
dtype: int64
print(data.unstack())
결과
second one two
first
A 1 2
B 3 4
second 인덱스가 columns로 이동했습니다.
first는 rows에 남아있습니다.
print(data.unstack(level=0))
결과
sql
first A B
second
one 1 3
two 2 4
이번에는 first가 columns로 올라갔습니다.
second는 rows로 남았습니다.
항목 설명
주요 기능 인덱스를 컬럼으로 변환
기본 동작 가장 안쪽 레벨(level=-1) 변환
추가 기능 level 파라미터로 대상 지정 가능
주 사용처 groupby-aggregation 결과 가독성 향상
unstack()은 빈칸(NaN)도 자동으로 채워줍니다.
필요한 경우 .fillna()로 후처리 가능합니다.