스킬.잇다
tutorial

"데이터 분석해줘" 다음 말이 안 나올 때 — data-compass 내비게이터 BEFORE/AFTER

AI에게 데이터 분석을 시키면 해주긴 하는데, 다음에 뭘 시켜야 할지는 아무도 알려주지 않습니다. 같은 견본 데이터로 스킬 없이 실행한 BEFORE와 data-compass 분석 지도를 따라 걸은 AFTER를 나란히 비교합니다. 견본 CSV가 그대로 실려 있어 직접 따라할 수 있습니다.

나무 책상에 펼쳐진 손그림 원정 지도 위에 황동 나침반이 놓이고, 점선 여정이 틸 색 이정표 깃발 세 개를 지나 빛나는 발견 지점에 닿으며 커피잔과 접힌 경로 메모가 곁들여진 수채 일러스트 [틸 슬레이트 악센트] — AI generated by codex (gpt-5.5)
나무 책상에 펼쳐진 손그림 원정 지도 위에 황동 나침반이 놓이고, 점선 여정이 틸 색 이정표 깃발 세 개를 지나 빛나는 발견 지점에 닿으며 커피잔과 접힌 경로 메모가 곁들여진 수채 일러스트 [틸 슬레이트 악센트]
AI generated by codex (gpt-5.5)

“분석해줘”까지는 누구나 합니다

카페 3개 지점의 주문 내역 CSV를 받았다고 합시다. Claude에게 이렇게 말합니다.

— 카페주문.csv 분석해줘

잘 해줍니다. 행 수를 세고, 합계를 내고, 지점별 매출을 표로 정리해 줍니다. 문제는 그 다음입니다.

— (…그래서 이제 뭘 물어보지?)

데이터 분석을 업으로 하지 않는 사람에게 진짜 장벽은 계산이 아니라 방향입니다. 처음 보는 데이터 앞에서 “뭘 시켜야 할지”를 모르니, 결국 “알아서 해줘”라고 하고 이해하지 못한 결과를 받아들게 됩니다. AI가 아무리 계산을 잘해도, 지시를 못 하면 대화가 거기서 멈춥니다.

data-compass는 이 방향 문제를 뒤집는 스킬입니다. 유저가 AI를 가이드하는 대신, AI가 유저를 가이드합니다 — 단, 분석은 대신 해주지 않고, 매 단계 “다음엔 이렇게 말해보세요”라는 복붙 지시문만 건넵니다. 지시는 언제나 당신이 합니다.

이 글은 썰이 아니라 실측 비교입니다. 아래 견본 데이터를 그대로 만들어 BEFORE(스킬 없이)와 AFTER(data-compass와 함께)를 직접 재현할 수 있습니다.

준비물 — 견본 데이터 만들기

빈 폴더에 아래 내용을 카페주문.csv로 저장하세요. 카페 3개 지점(강남·홍대·판교)의 2026년 4~6월 주문 36건입니다. 이 안에 발견할 만한 이야기가 하나 숨어 있습니다 — 글 끝에서 확인됩니다.

카페주문.csv 전체 내용 (복사해서 저장)
고객명,주문번호,지점,주문일,메뉴,금액,환불여부
김민준,C-1001,강남점,2026-04-03,아메리카노,4500,N
이서연,C-1002,강남점,2026-04-05,카페라떼,5500,N
박도윤,C-1003,홍대점,2026-04-07,아메리카노,4500,N
최지우,C-1004,판교점,2026-04-08,바닐라라떼,6000,N
정하은,C-1005,강남점,2026-04-12,콜드브루,5000,N
강시우,C-1006,홍대점,2026-04-15,카페라떼,5500,Y
윤서아,C-1007,판교점,2026-04-18,아메리카노,4500,N
임준서,C-1008,강남점,2026-04-21,콜드브루,5000,N
한예은,C-1009,홍대점,2026-04-24,바닐라라떼,6000,N
오지호,C-1010,판교점,2026-04-27,카페라떼,5500,N
서유나,C-1011,강남점,2026-05-02,아메리카노,4500,N
신은우,C-1012,홍대점,2026-05-05,콜드브루,5000,N
황수아,C-1013,판교점,2026-05-08,아메리카노,4500,N
안도현,C-1014,강남점,2026-05-11,바닐라라떼,6000,Y
송채원,C-1015,홍대점,2026-05-14,카페라떼,5500,N
전민재,C-1016,판교점,2026-05-17,콜드브루,5000,N
홍서준,C-1017,강남점,2026-05-20,아메리카노,4500,N
문지안,C-1018,홍대점,2026-05-23,아메리카노,4500,N
양하율,C-1019,판교점,2026-05-26,카페라떼,5500,N
조은서,C-1020,강남점,2026-05-29,콜드브루,5000,N
백시은,C-1021,홍대점,2026-06-02,흑임자라떼,6500,Y
남주원,C-1022,판교점,2026-06-04,아메리카노,4500,N
유하진,C-1023,강남점,2026-06-06,카페라떼,5500,N
심로아,C-1024,홍대점,2026-06-09,흑임자라떼,6500,Y
노건우,C-1025,판교점,2026-06-11,콜드브루,5000,N
하윤슬,C-1026,강남점,2026-06-13,아메리카노,4500,N
곽태오,C-1027,홍대점,2026-06-16,흑임자라떼,6500,Y
성아린,C-1028,판교점,2026-06-18,바닐라라떼,6000,Y
차이든,C-1029,강남점,2026-06-20,콜드브루,5000,N
주소율,C-1030,홍대점,2026-06-23,흑임자라떼,6500,N
우재이,C-1031,판교점,2026-06-25,아메리카노,4500,N
구나은,C-1032,강남점,2026-06-26,카페라떼,5500,N
민시온,C-1033,홍대점,2026-06-27,아메리카노,4500,N
탁하람,C-1034,판교점,2026-06-28,콜드브루,5000,N
피준우,C-1035,강남점,2026-06-29,아메리카노,4500,N
석다은,C-1036,홍대점,2026-06-30,카페라떼,5500,N

스킬은 스킬팩 itda-data 0.18.0부터 포함됩니다.

claude plugin install itda-skills/skills.pub itda-data

BEFORE — data-compass 없이 “분석해줘”

같은 CSV를 놓고, data-compass 없이 Claude에게 “카페주문.csv 분석해줘” 한 마디만 던져 실제로 실행했습니다. 응답 발췌입니다(전문은 접힘).

분석 완료했습니다. 36건의 주문(2026년 4~6월), 3개 지점, 5개 메뉴 데이터입니다.

전체 요약 — 총 주문 36건, 총 매출 188,000원 (…) 환불 6건 / 37,000원, 환불률 16.7%

(월별 추이 표, 지점별 표, 메뉴별 표…)

핵심 발견 — 흑임자라떼의 환불률 75%: 6월 신메뉴로 4건 판매 중 3건이 환불됐고, 전부 홍대점입니다. (…) 원하시면 차트 시각화나 엑셀 리포트로 정리해 드릴 수 있습니다.

BEFORE 응답 전문 보기 (실측 원문)
분석 완료했습니다. 36건의 주문(2026년 4~6월), 3개 지점, 5개 메뉴 데이터입니다.

## 전체 요약
- 총 주문: 36건, 총 매출 188,000원 (평균 객단가 약 5,222원)
- 환불: 6건 / 37,000원 → 환불 반영 순매출 151,000원, 환불률 16.7%

## 월별 추이
4월 10건 52,000원 · 5월 10건 50,000원 · 6월 16건 86,000원
6월에 주문이 60% 급증했는데, 신메뉴로 보이는 흑임자라떼(6월에만 등장)가
4건을 차지하고 6월 하순에 주문 간격이 촘촘해진(거의 매일) 영향입니다.

## 지점별
홍대점 12건 67,000원 (환불 4건) · 강남점 13건 65,000원 (환불 1건) · 판교점 11건 56,000원 (환불 1건)
홍대점이 매출 1위지만 환불이 6건 중 4건으로 집중되어 있어,
순매출로는 강남점(59,000원)이 홍대점(43,000원)을 크게 앞섭니다.

## 메뉴별
아메리카노 12건 (환불 0) · 카페라떼 8건 (환불 1) · 콜드브루 8건 (환불 0)
· 흑임자라떼 4건 (환불 3) · 바닐라라떼 4건 (환불 2)

## 핵심 발견
1. 흑임자라떼의 환불률 75% — 6월 신메뉴로 4건 판매 중 3건이 환불됐고, 전부 홍대점입니다.
   홍대점의 환불 집중도 사실상 이 메뉴 문제입니다. 레시피·품질 점검이 필요해 보입니다.
2. 바닐라라떼도 환불률 50% (4건 중 2건) — 고가 라떼류 전반의 만족도 이슈일 가능성.
3. 반면 아메리카노·콜드브루(20건)는 환불 0건 — 기본 메뉴는 안정적입니다.
4. 흑임자라떼 환불 3건을 빼면 실질 환불률은 8.3%로 절반 수준입니다.

원하시면 차트 시각화나 엑셀 리포트로 정리해 드릴 수 있습니다.

보다시피 분석 자체는 훌륭합니다. 숨겨둔 이야기(흑임자라떼)까지 한 방에 찾아냈습니다. AI의 계산 능력은 이미 문제가 아닙니다. 문제는 다른 데 있습니다.

  1. 정답을 받았지만, 도달하는 법은 못 배웠습니다. 어떤 질문이 가능한지, 왜 그 질문부터인지를 볼 기회 없이 완성된 결과가 옵니다. 다음 주에 다른 데이터를 받으면 나는 여전히 “분석해줘” 한 마디뿐이고, 결과를 검증하거나 다르게 잘라볼 힘도 없습니다.
  2. 다음이 없습니다. 대화가 한 번에 끝나고, “그래서 이제 뭘 더 물어볼까”는 다시 내 몫입니다. 실무 데이터는 이렇게 작지 않아서, 실제로는 훨씬 긴 덤프를 받아 어디부터 읽을지부터 막힙니다.
  3. 매번 다릅니다. 같은 파일로 다시 돌리면 구성도 순서도 달라집니다. 강의나 스터디에서 “저랑 화면이 달라요”가 바로 발생합니다.

AFTER — data-compass와 함께

이번엔 이렇게 시작합니다.

— 이 데이터 분석 어떻게 시작해?

스킬이 딱 두 가지만 묻습니다. 데이터 위치, 그리고 알고 싶은 것(“몰라요”도 유효한 답입니다). 여기서는 “환불이 좀 궁금해”라고 답했다고 합시다. 그러면 데이터를 훑어 분석 지도 파일(카페주문-분석지도.md)을 만들어 줍니다. 아래는 위 견본 CSV로 실제 생성된 지도의 핵심부입니다.

| 컬럼 | 역할 | 예시 | 고유값 | 결측% |
|---|---|---|---|---|
| 고객명 | 개인정보 | 김민준, 이서연 | 36 | 0.0 |
| 주문번호 | 식별자 | C-1001, C-1002 | 36 | 0.0 |
| 지점 | 차원 | 강남점, 홍대점 | 3 | 0.0 |
| 주문일 | 날짜 | 2026-04-03, 2026-04-05 | 36 | 0.0 |
| 메뉴 | 차원 | 아메리카노, 카페라떼 | 5 | 0.0 |
| 금액 | 측정값 | 4500, 5500 | 5 | 0.0 |
| 환불여부 | 차원 | N, Y | 2 | 0.0 |

컬럼마다 역할이 붙습니다. 개인정보(고객명)와 식별자(주문번호)는 분석 축 추천에서 자동으로 빠집니다 — “고객명별 주문번호” 같은 무의미한 분석을 제안하지 않기 위해서입니다.

생성된 분석 지도 전문 보기
# 분석 지도 — 카페주문.csv

> data-compass 가 만든 분석 여정 지도입니다. 한 걸음 나아갈 때마다
> §3(현재 위치)과 §4(지나온 길)가 갱신됩니다. 지시는 언제나 당신이 합니다.

## 1. 지형 — 이 데이터는 무엇인가

- 규모: 36행 × 7열 · 인코딩 utf-8
- 관심사: 환불

| 컬럼 | 역할 | 예시 | 고유값 | 결측% |
|---|---|---|---|---|
| 고객명 | 개인정보 | 김민준, 이서연 | 36 | 0.0 |
| 주문번호 | 식별자 | C-1001, C-1002 | 36 | 0.0 |
| 지점 | 차원 | 강남점, 홍대점 | 3 | 0.0 |
| 주문일 | 날짜 | 2026-04-03, 2026-04-05 | 36 | 0.0 |
| 메뉴 | 차원 | 아메리카노, 카페라떼 | 5 | 0.0 |
| 금액 | 측정값 | 4500, 5500 | 5 | 0.0 |
| 환불여부 | 차원 | N, Y | 2 | 0.0 |

- 품질 신호: 특이 없음

## 2. 갈 수 있는 길 — 이 데이터로 가능한 분석

1. **[탐색]** 환불여부 기준으로 금액을(를) 갈라 봅니다 — 어디에서 값이 큰지/작은지가 첫 지형 감각입니다 (담당: `data-ask`)
2. **[탐색]** 환불여부 값이 어떻게 분포하는지 봅니다 — 값별 건수는 데이터의 몸통이 어디인지 알려줍니다 (담당: `data-ask`)
3. **[추이]** 시간 흐름에서 금액 변화를 봅니다 — 추이를 알면 이상 구간(급증·급감)이 눈에 띕니다 (담당: `data-ask`)
4. **[탐색]** 금액 상위 건을 봅니다 — 극단값 몇 건이 전체 그림을 왜곡할 수 있습니다 (담당: `data-ask`)
5. **[보고]** 여정을 한 페이지 보고로 정리합니다 — 분석은 남에게 설명할 수 있어야 끝난 것입니다 (담당: `data-compass`)

## 3. 현재 위치와 다음 행선지

- 현재 위치: **출발점** (지형 파악 완료, 아직 첫 분석 전)
- 행선지 1 ← 추천: [탐색] 환불여부 기준으로 금액을(를) 갈라 봅니다
  > 이렇게 말해보세요: "환불여부별 금액 합계와 평균 알려줘"
- 행선지 2: [탐색] 환불여부 값이 어떻게 분포하는지 봅니다
  > 이렇게 말해보세요: "환불여부 값별 건수 분포 알려줘"
- 행선지 3: [추이] 시간 흐름에서 금액 변화를 봅니다
  > 이렇게 말해보세요: "월별 금액 추이 보여줘"

## 4. 지나온 길 — 여정 로그

- (출발) 지도 생성 — 아직 첫 걸음 전입니다.

여기서 중요한 약속 하나: 여러분이 위 CSV로 만들면 지도가 이 글과 똑같이 나옵니다. 초기 지도는 결정론으로 생성되기 때문입니다(같은 데이터·같은 관심사 → 같은 지도). “저랑 화면이 달라요”가 원리상 발생하지 않아 강의·스터디 교재로 쓸 수 있습니다.

그리고 BEFORE와의 결정적 차이 — 여기서 멈춥니다. 스킬은 분석을 시작하지 않습니다. 지시문을 건넸으니, 걷는 건 당신입니다.

여정 걷기 — 환불 6건의 범인을 찾아서

이제 지도의 지시문을 복붙하며 걷습니다. 아래 수치는 전부 위 견본 CSV로 실제 계산한 값입니다.

1보 — 환불이 얼마나 되는데?

이렇게 말해보세요: “환불여부 값별 건수 분포 알려줘”

환불여부건수비중
N3083.3%
Y616.7%

주문 여섯 건 중 한 건이 환불. 커피 주문치고는 많아 보입니다. 결과가 나오면 코치가 지도의 여정 로그를 갱신하고, 결과를 반영한 다음 행선지를 제안합니다 — “환불 6건이 어디에 몰려 있는지 갈라 봅시다.”

2보 — 어느 지점에서?

이렇게 말해보세요: “지점별 환불 건수 알려줘”

지점환불 건수
홍대점4
강남점1
판교점1

환불 6건 중 4건이 홍대점입니다. 코치의 다음 제안 — “홍대점 환불 주문의 메뉴를 봅시다.”

3보 — 무슨 메뉴에서?

이렇게 말해보세요: “홍대점에서 환불된 주문의 메뉴별 건수 알려줘”

메뉴환불 건수
흑임자라떼3
카페라떼1

흑임자라떼는 6월에 홍대점에만 등장한 신메뉴입니다. 판매 4건 중 3건이 환불 — 숨어 있던 이야기가 이것이었습니다. “카페 주문 데이터 분석”이라는 막연한 과제가, 세 걸음 만에 “6월 신메뉴 흑임자라떼 품질을 점검해야 한다”는 실행 가능한 발견으로 좁혀졌습니다.

이 시점의 지도는 이렇게 자라 있습니다.

## 4. 지나온 길 — 여정 로그

- (출발) 지도 생성
- (1보) "환불여부 값별 건수 분포 알려줘" → 36건 중 환불 6건(16.7%)
- (2보) "지점별 환불 건수 알려줘" → 홍대점 4 · 강남점 1 · 판교점 1 — 홍대점 집중
- (3보) "홍대점에서 환불된 주문의 메뉴별 건수 알려줘" → 흑임자라떼 3 · 카페라떼 1 — 6월 신메뉴에 집중

4보 — 정리

이렇게 말해보세요: “지금까지 알아낸 것들을 분석 지도 기준으로 한 페이지로 정리해줘”

여정 로그가 그대로 보고서의 뼈대가 됩니다. 어떤 질문을 어떤 순서로 던져 무엇을 알아냈는지가 기록으로 남아 있으니, 정리는 요약일 뿐입니다.

왜 분석을 대신 안 해주나요?

일부러입니다. 2보의 “지점별 환불 건수 알려줘”, 3보의 “홍대점에서 환불된 주문의…”는 지도가 준 문장을 복붙했을 뿐이지만, 여정이 끝나면 이 문형이 손에 남습니다 — 차원별로 가르고, 몰린 곳을 파고드는 데이터 분석의 기본기가 지시문 형태로 몸에 붙는 것입니다. 컬럼명만 바꾸면 다음 데이터에서도 그대로 통합니다(“지점별” 대신 “담당자별”, “메뉴별” 대신 “상품별”).

data-compass가 자동으로 다 해버리면 이 학습이 사라집니다. 그래서 “알아서 진행해줘”라고 해도 지시문을 다시 건넬 뿐, 먼저 걷지 않습니다.

BEFORE / AFTER 한눈에

BEFORE (스킬 없이)AFTER (data-compass)
시작”분석해줘” 한 방에 결과 덤프2문항(위치·관심사) 후 분석 지도
주도권AI가 알아서 (나는 관전)지시는 내가, 방향은 지도가
다음 단계스스로 떠올려야 함매 단계 복붙 지시문 2~3개
재현성실행마다 다름같은 데이터 → 같은 초기 지도
남는 것결과 텍스트여정 로그 + 질문하는 문형

직접 해보세요

  1. 카페주문.csv를 저장하고
  2. itda-data 스킬팩(0.18.0+)을 설치한 뒤
  3. Claude에게 — “이 데이터 분석 어떻게 시작해?”

관심사를 물으면 “환불이 궁금해”라고 답해 보세요. 이 글과 똑같은 지도가 나오는지, 그리고 세 걸음 만에 흑임자라떼에 도달하는지 확인해 보시길. 물론 “몰라요”라고 답해도 됩니다 — 그때는 지도가 대신 첫 방향을 제안합니다.

내 데이터가 지저분하다면(빈 헤더·중복 열·숫자에 섞인 텍스트) 지도가 알아서 정돈 경로를 첫 행선지로 올립니다. 실제 계산은 data-ask가, 숫자 검산은 data-verify가 맡습니다 — data-compass는 끝까지 길만 안내합니다.

이 글에서 언급된 스킬

data-ask

CSV 를 한국어로 물으면 실제로 계산해 답하는 질문 스킬입니다. "지역별 환불율", "월별 매출 추이", "재구매 비중"처럼 말하면 됩니다. SQL 을 직접 쓰지 않고 typed QueryPlan 으로 옮겨 검증된 SQL 을 duckdb 로 실행하며(눈대중 금지), 표본이 작은 결과는 신뢰가 낮다고 경고합니다. cp949 한국 엑셀도 그대로 읽습니다.

data-compass

처음 보는 데이터 앞에서 뭘 시켜야 할지 모르는 사람을 위한 데이터 분석 내비게이터(순수 코치)입니다. 데이터 위치와 관심사만 물은 뒤 "분석 지도"를 만들어, 매 단계 "이렇게 말해보세요" 복붙 지시문으로 여정을 안내합니다. "이 데이터 분석 어떻게 시작해?", "뭘 물어봐야 할지 모르겠어", "데이터 분석 가이드해줘", "분석 지도 만들어줘", "다음엔 뭘 해볼까?", "데이터 분석 처음이야"처럼 말하면 됩니다. 분석 자체는 실행하지 않고 data-prep(정돈)·data-ask(질문)·data-verify(검수)·data-audit(감사)로 안내만 하는 관제탑입니다.

data-prep

엉망인 CSV·엑셀을 진단하고 원본은 그대로 둔 채 깔끔한 정돈본을 새 파일로 만들어주는 스킬입니다. 공백·날짜·중복은 물론 대소문자 혼재(usa/USA)·깨진 인코딩(mojibake)·통화표기($1,200)까지 정제하고, 숫자에 텍스트가 섞인 열은 경고합니다. "이 엑셀 정리해줘", "제목 행이 위에 있는데 정리해줘", "소계 행 빼고 깔끔하게", "대소문자 통일해줘", "중복 제거해줘"처럼 말하면 됩니다. 진단 → [가설] 제시 → 사용자 확인 → 정돈본 산출의 4단계로 안전하게 동작하며, cp949 한국 엑셀도 그대로 읽습니다.

data-verify

엑셀·CSV의 숫자가 실제로 맞는지 검수하는 스킬입니다. 부분합↔총계 불일치·원장 대조·음수/범위/중복 규칙 위반·시트 간 값 어긋남을 찾아 "이 숫자 틀렸어요"를 근거(기대값 vs 실제값 vs 차이)와 함께 짚습니다. "이 수치 맞는지 검수해줘", "합계 검산해줘", "원장이랑 대조해줘", "이 값들 검산해줘", "숫자 이상 없는지 봐줘"처럼 말하면 됩니다. 보고 전용 — 확인 없이 값을 바꾸지 않습니다. 파일 검수는 openpyxl 크로스플랫폼(Office 불필요), Windows+Office 에선 "열어둔 엑셀에서 이상치를 하이라이트+코멘트로 실시간 지적"(office_audit MCP)도 됩니다.

질문·제안·버그 신고 무엇이든 환영합니다.

문의하기