Logo
내 게시판 만들기
파이썬

melt와 pivot — long ↔ wide 변환

다람쥐 | 2026.04.27 13:01:07
조회 13 | 추천 0

데이터의 「긴 형식(long)」과 「넓은 형식(wide)」 사이의 변환은 데이터 정리의 핵심 기술입니다.

Pandas의 melt(wide → long)와 pivot(long → wide)이 이 변환을 담당합니다.



긴 형식 vs 넓은 형식.

넓은 형식: 한 행이 한 객체, 여러 열에 다른 측정.

예: 학생|수학|영어|과학 — 홍길동|90|85|95.

긴 형식: 한 행이 한 측정.

예: 학생|과목|점수 — 홍길동|수학|90, 홍길동|영어|85, ...



melt — wide → long.

df_long = df.melt(id_vars="학생", value_vars=["수학", "영어", "과학"], var_name="과목", value_name="점수").

「학생」을 식별자로 두고 나머지 열을 「과목, 점수」 두 열로 풀어 줍니다.

tidy data 만들기의 표준.



pivot — long → wide.

df_wide = df_long.pivot(index="학생", columns="과목", values="점수").

melt의 정반대.

보고서·시각화에는 wide가, 분석·집계에는 long이 더 편한 경우가 많습니다.



pivot_table은 pivot의 강화판.

같은 (행, 열) 조합에 여러 값이 있을 때 자동 집계.

pivot이 「단순 재배열」이라면 pivot_table은 「재배열 + 집계」.

본격적 데이터 정리는 pivot_table이 더 자주 쓰입니다.




한 줄 요약


melt는 wide → long으로 펼치고, pivot은 long → wide로 모읍니다.

tidy data 원칙을 따라 분석은 long, 보고서·시각화는 wide가 자연스럽습니다.




더 알아볼 것


- Tidy Data 원칙 (Hadley Wickham)

- stack·unstack — pivot의 친척

- melt의 var_name·value_name

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
131 부엉이 26/04/27 14 0
130 야옹이 26/04/27 15 0
129 별님이 26/04/27 14 0
128 너구리 26/04/27 17 0
127 부엉이 26/04/27 14 0
126 구름이 26/04/27 14 0
125 곰돌이 26/04/27 17 0
124 곰돌이 26/04/27 17 0
123 야옹이 26/04/27 18 0
122 멍뭉이 26/04/27 15 0
121 토순이 26/04/27 15 0
120 토순이 26/04/27 15 0
119 별님이 26/04/27 18 0
118 다람쥐 26/04/27 15 0
117 별님이 26/04/27 15 0
116 다람쥐 26/04/27 13 0
115 햇살이 26/04/27 12 0
114 너구리 26/04/27 11 0
113 부엉이 26/04/27 16 0
112 야옹이 26/04/27 14 0
111 햇살이 26/04/27 17 0
110 곰돌이 26/04/27 12 0
109 토순이 26/04/27 13 0
108 햇살이 26/04/27 15 0
107 멍뭉이 26/04/27 14 0
106 햇살이 26/04/27 12 0
105 햇살이 26/04/27 11 0
104 햇살이 26/04/27 14 0
103 야옹이 26/04/27 14 0
102 너구리 26/04/27 12 0
신고하기

신고 사유를 선택해 주세요.