본문 바로가기

CSV Pivot·Unpivot

브라우저 처리

세로로 긴 CSV를 rows·columns·values로 지정해 행과 열이 있는 교차표로 합산하고, unpivot=열1,열2로 거꾸로 가로 표를 세로 목록으로 풀어냅니다.

사용 전 확인
  • 파일·이미지·문서 처리 도구는 브라우저 안에서 처리되더라도 원본에 개인정보나 민감 정보가 포함될 수 있습니다. 공유·제출 전 원본과 결과를 한 번 더 확인하세요.
도구 실행입력 후 결과 확인
CSV Pivot·Unpivot 샘플 실행

Pivot은 '월, 채널, 방문수'처럼 한 줄에 한 기록씩 쌓인 데이터를 월이 행, 채널이 열인 표로 바꾸는 작업입니다. 설정 칸에 rows=month; columns=channel; values=visits처럼 적으면 같은 칸에 들어가는 값들을 모두 더해 교차표를 만듭니다.

브라우저 처리
샘플 결과
month,검색,SNS
1월,120,80
2월,150,0
자바스크립트가 활성화되면 이 영역이 실제 입력, 실행, 결과 패널로 바뀝니다.

CSV Pivot·Unpivot 사용 가이드

Pivot은 '월, 채널, 방문수'처럼 한 줄에 한 기록씩 쌓인 데이터를 월이 행, 채널이 열인 표로 바꾸는 작업입니다. 설정 칸에 rows=month; columns=channel; values=visits처럼 적으면 같은 칸에 들어가는 값들을 모두 더해 교차표를 만듭니다.

기록이 없는 칸은 0으로 채우므로 표가 빈틈없이 맞춰집니다. 값 열에 숫자가 아닌 글자가 있으면 합계를 낼 수 없어 바로 알려 주고, 빈칸은 0으로 봅니다.

Unpivot은 그 반대입니다. unpivot=검색,SNS처럼 세로로 내릴 열을 적으면 각 열이 한 줄씩의 '이름, 값' 쌍이 되고 나머지 열은 줄마다 반복됩니다. name=, value=로 새 열 이름도 정할 수 있습니다.

사용 방법

  1. 'CSV' 칸에 데이터를 붙여 넣습니다.
  2. 교차표를 만들려면 'rows=행 열; columns=열 열; values=합칠 숫자 열'을, 풀어내려면 'unpivot=열1,열2'를 설정 칸에 적습니다.
  3. '실행'을 눌러 결과 CSV를 확인하고 .csv로 받습니다.

예시: 월·채널별 방문수 교차표

입력
month,channel,visits
1월,검색,120
1월,SNS,80
2월,검색,150
---
rows=month; columns=channel; values=visits
결과
month,검색,SNS
1월,120,80
2월,150,0

2월에는 SNS 기록이 없어 0으로 채워졌습니다.

이럴 때 쓰면 좋아요

  • 광고 채널별·월별 성과 기록을 보고서용 교차표로 만들 때
  • 상품·지점별 판매 기록을 지점이 열인 표로 바꿔 비교할 때
  • 월이 열로 펼쳐진 엑셀 표를 데이터베이스에 넣기 좋은 세로 목록으로 풀 때
  • 차트 도구가 요구하는 형태(가로 또는 세로)로 데이터를 맞출 때

문제가 생겼을 때

'실제로 존재하는 rows·columns·values 열 이름이 필요합니다' 오류

설정에 적은 열 이름이 CSV 첫 줄과 다릅니다. 대소문자와 공백까지 첫 줄과 똑같이 적으세요.

'Pivot 값은 유한한 숫자 또는 빈 셀이어야 합니다' 오류

값 열에 '1만', 'N/A' 같은 글자가 섞여 있습니다. 숫자만 남기거나 빈칸으로 바꾼 뒤 다시 실행하세요.

활용 팁

  • 같은 칸에 들어가는 기록이 여러 개면 모두 더합니다. 평균이나 최대값이 필요하면 CSV 그룹·집계기를 쓰세요.
  • 입력은 20,000행, 결과는 헤더 포함 50,000칸까지 처리합니다. 열 종류가 너무 많으면 rows와 columns를 바꿔 보세요.

자주 묻는 질문

Unpivot에서 열 이름을 정하지 않으면 어떻게 되나요?

이름 열은 column, 값 열은 value가 됩니다. 'unpivot=검색,SNS; name=channel; value=visits'처럼 지정하면 그 이름을 씁니다.

Unpivot에서 빈 값도 행으로 나오나요?

네. 원래 표의 빈칸도 값이 빈 행으로 나옵니다. 빈 값을 빼려면 결과를 CSV 필터·검색기에 넣어 정리하세요.

Pivot 결과의 열 순서는 어떻게 되나요?

columns 열의 값이 데이터에 처음 나온 순서대로 열이 됩니다. 원하는 순서가 있으면 먼저 정렬한 뒤 실행하세요.