데이터가 모이는 곳에서 대시보드 만들기
제주 관광 공공데이터로 팀장이 매달 보는 대시보드를 A4 한 장으로 만듭니다. 숫자 카드 4개, 그래프 3개, 최근 13개월 표가 들어갑니다. 숫자는 한 칸도 손으로 옮기지 않습니다.
1. 대시보드는 데이터가 저절로 흘러 들어와야 삽니다
월간 보고서에 넣는 대시보드를 손으로 만들면 순서가 늘 같습니다. 통계 사이트에 들어가 숫자를 찾고, 엑셀에 옮기고, 차트 범위를 고치고, 전년 대비를 다시 계산합니다. 다음 달에도 처음부터 다시 합니다. 바쁜 달에 한 번 거르면 대시보드는 거기서 멈춥니다. 옮겨 적다가 숫자 하나가 틀리면 아무도 모르고 회의에 올라갑니다.
AI에게 맡겨도 이 구조는 그대로입니다. AI가 차트는 빨리 그려 주지만, 숫자를 매번 사람이 찾아 붙여 넣는다면 손이 덜 가는 것뿐입니다.
그래서 대시보드보다 먼저 있어야 하는 것이 데이터 파이프라인입니다. 어려운 말이 아닙니다. 숫자가 정해진 곳에 저절로 쌓이는 길입니다. 그 길이 있으면 사람이 할 일은 "이번 달 것으로 다시 만들어 줘" 한 줄로 줄어듭니다. 같은 요청문을 다음 달에 그대로 붙이면 새 달이 붙은 대시보드가 나옵니다.
왼쪽 두 칸이 파이프라인입니다. 원천 기관이 숫자를 새로 올리면 데이터허브가 받아 와서 같은 주소의 CSV에 쌓아 둡니다. 사람은 오른쪽 두 칸만 합니다. CSV를 받아 대화창에 올리고, 저장해 둔 요청문을 붙입니다.
이 장에서는 제주 관광 공공데이터를 매일 모아 두는 제주 AI 관광데이터허브를 예로 씁니다. 위니브가 만들어 운영하는 비영리 무료 서비스입니다.
2. 제주 AI 관광데이터허브
https://data.wenivops.co.kr 첫 화면에 쓰는 순서가 세 줄로 적혀 있습니다.
- 데이터를 고르거나 전체 프롬프트 복사
- 쓰는 AI 대화창에 붙여넣기
- 질문만 바꿔 가며 분석
알아 둘 것은 다음과 같습니다.
- 제주 관광 공공데이터 59종, 9만여 행이 있습니다(2026년 11월 11일 화면 기준). 범주는 입도, 소비, 실태조사, 관광지, 교통, 항공, 방문, 날씨, 축제·행사 등입니다.
- 원천은 제주관광공사 제주관광빅데이터플랫폼, 제주특별자치도관광협회, 공공데이터포털(한국공항공사·기상청·한국관광공사)입니다. 하루 세 번, 바뀐 것만 받아 와 쌓습니다.
- 가입도 키도 필요 없습니다. 화면에도 그렇게 적혀 있습니다.
- 원천 기관의 공식 서비스는 아닙니다. 그래서 숫자를 쓸 때는 원출처를 밝힙니다(다음 절).
데이터 화면에 있는 버튼
첫 화면에서 데이터 이름을 누르면 그 데이터 화면이 열립니다. 버튼은 쓰는 사람에 따라 나뉩니다.
| 누가 쓰나 | 버튼·주소 | 무엇을 주나 |
|---|---|---|
| 사람(엑셀) | [CSV], [엑셀용 CSV] | 데이터 전체를 파일로 |
| AI 대화창 | [프롬프트 복사 (웹 접근 가능한 AI)] | 데이터 설명과 CSV 주소. AI가 주소에서 직접 받아야 합니다 |
| AI 대화창 | [데이터 포함 프롬프트 복사] | 데이터 설명에 데이터 전체를 붙인 글 |
| 프로그램 | [JSON], API 문서 | 같은 데이터를 프로그램용으로 |
| AI 도구 | llms.txt | 데이터 목록과 CSV 주소를 AI가 읽기 좋게 적은 안내문 |
데이터 화면의 '데이터 정보' 칸에는 원출처, 이용조건, 원천 갱신 주기, 데이터 기간, 최종 반영 시각이 있습니다. 보고서에 숫자를 넣기 전에 여기를 한 번 봅니다.
AI가 CSV 주소를 직접 열지 못하는 경우가 있습니다. 그래서 [프롬프트 복사 (웹 접근 가능한 AI)]로 복사한 글에는 "주소를 열 수 없는 환경이면 저에게 CSV 파일을 첨부해 달라고 말해 주세요"라는 문장이 들어 있습니다. 이 장에서는 확실한 쪽으로 갑니다. CSV 파일을 받아 대화창에 첨부합니다. 첨부가 안 되면 [데이터 포함 프롬프트 복사]로 데이터째 붙여 넣습니다.
인용하지 않는 데이터: '관광객 입도현황(일별, 잠정) - 제주관광협회'에는 참고용 · OCR로 읽은 숫자라는 표시가 붙어 있습니다. 관광협회가 이미지로 올린 표를 글자 인식으로 읽은 숫자라 잘못 읽은 값이 있을 수 있습니다. 보고서에는 같은 내용의 다른 데이터(월별 입도 관광객 등)를 씁니다.
3. 준비물
- Claude 대화창. 1장에서 켠 코드 실행 및 파일 생성이 켜져 있어야 합니다.
- 실습 묶음 jeju-data-snapshot-20261111-v2.zip: 2026년 11월 11일에 데이터허브에서 받은 CSV와 출처 README입니다. 데이터허브가 잠시 열리지 않아도 이 파일로 실습합니다.
| 묶음 안 파일 | 내용 |
|---|---|
ijto-17.csv | 월별 입도 관광객(2013-01~2026-09). 제주관광협회, 공공누리 제1유형 |
kac-cju-monthly.csv | 제주공항 월별 수송실적(1997-01~2026-10). 한국공항공사, 공공데이터포털 |
ijto-70.csv | 연도별 입도 관광객(2001~2026). 다음 절에서 씁니다 |
light/ | 위 두 월별 파일을 2024년 1월부터 자른 판(ijto-17-from-2024-01.csv, kac-cju-monthly-from-2024-01.csv). 무료 계정 한도를 아낄 때 씁니다 |
prompts/ | [데이터 포함 프롬프트 복사]로 복사되는 글을 파일로 저장한 것 |
request-dashboard.txt | 아래 요청문 |
jeju-dashboard-example.html | 아래 5절의 완성본 |
4. 따라 하기
- https://data.wenivops.co.kr 에서 범주 입도를 누르고 월별 입도 관광객을 엽니다. [CSV]를 눌러
ijto-17.csv를 받습니다. - 범주 항공에서 제주공항 월별 수송실적(도착·출발 운항편수와 여객, 국내선·국제선)을 엽니다. [CSV]를 눌러
kac-cju-monthly.csv를 받습니다. 브라우저가 파일로 받지 않고 화면에 글자를 띄우면 옆의 [엑셀용 CSV]를 누릅니다. 같은 데이터가 같은 이름의 파일로 받아집니다. - Claude에서 새 대화를 열고 입력창의 +로 두 파일을 첨부합니다. 데이터허브가 열리지 않으면 실습 묶음의 같은 이름 파일을, 한도가 걱정되면
light/의 두 파일을 올립니다.light/파일은 이름 뒤에-from-2024-01이 붙어 있으니, 요청문의 파일 이름 두 곳도 그 이름으로 바꿉니다. - 아래 요청문을 그대로 붙여 넣고 보냅니다.
첨부한 CSV 두 개로 '제주 관광 월간 대시보드'를 A4 한 장짜리 HTML 파일로 만들어 줘.
- ijto-17.csv: 제주 월별 입도 관광객. month(연월), total(전체), domestic(내국인), foreign(외국인)
- kac-cju-monthly.csv: 제주공항 월별 수송실적. arr_passengers가 도착 여객
넣을 것
1. 맨 위 숫자 카드 4개: 최신 달 입도객, 올해 1월~최신 달 입도객 누계, 최신 달 외국인 입도객, 공항 도착 여객 최신 달. 카드마다 작년 같은 달(같은 기간) 대비 증감률과 작년 숫자
2. 월별 입도객 선그래프: 올해와 작년을 1~12월 한 축에
3. 최근 13개월의 전년 같은 달 대비 증감률 막대그래프
4. 공항 도착 여객 선그래프: 올해와 작년
5. 최근 13개월 표: 전체, 작년 같은 달, 증감률, 내국인·외국인 증감률
6. 맨 아래 출처: 제주관광협회 「월별 입도 관광객」(공공누리 제1유형), 한국공항공사 제주공항 수송실적. 둘 다 제주 AI 관광데이터허브(data.wenivops.co.kr) 경유, 받은 날짜
지킬 것
- 숫자는 파일에서 계산한 값만 쓴다. '최신 달'은 파일의 마지막 행으로 정하고, 카드마다 몇 년 몇 월인지 적는다
- 흑백으로 인쇄해도 읽히게 색은 옅게, 작년 선은 점선으로
- 다 만들면 카드 4개의 숫자를 어느 행으로 계산했는지 표로 따로 보여 줘
- 결과가 나오면 HTML 파일로 저장합니다. 저장하는 버튼이 보이지 않으면 "이 대시보드를 HTML 파일로 내려받게 해 줘"라고 한 번 더 말합니다. 받은 파일을 브라우저로 열어 인쇄하면 A4 한 장이 됩니다.
요청문에 '9월'이나 '2026년' 같은 날짜를 넣지 않았습니다. '최신 달'과 '올해'로만 적었습니다. 그래서 다음 달 CSV를 올려도 요청문을 고칠 필요가 없습니다. 파이프라인과 짝을 이루는 요청문은 이렇게 날짜 없이 씁니다.
5. 완성본

위 요청문대로 만든 완성본입니다. 2026년 11월 11일에 받은 CSV로 계산했습니다. HTML 파일로 받아 열어 볼 수 있습니다(실습 묶음의 jeju-dashboard-example.html과 같은 파일입니다).
맨 위 카드부터 읽습니다. 9월 입도객은 112만 명으로 작년 9월보다 4.9% 적습니다. 1~9월 누계는 작년보다 3.0% 많습니다. 두 숫자가 다른 방향을 가리키는 까닭은 가운데 막대그래프에 있습니다. 2025년 9월부터 2026년 4월까지는 작년보다 많았고, 5월부터 9월까지 다섯 달은 작년보다 적었습니다. 외국인은 9월에도 작년보다 16.1% 많아서, 줄어든 쪽은 내국인입니다. 오른쪽 공항 도착 여객은 입도객보다 한 달 먼저 나오는 숫자라 10월까지 있습니다. 10월에도 작년보다 4.3% 적었습니다.
AI가 만들 때마다 배치와 색은 조금씩 다릅니다. 숫자는 같아야 합니다. 같은 날 같은 파일을 올렸다면 아래 검산표와 맞춰 봅니다.
6. 확인할 것
요청문 마지막 줄 때문에 Claude가 카드 숫자를 어느 행으로 계산했는지 표로 보여 줍니다. 그 표를 아래와 맞춰 봅니다. 2026년 11월 11일에 받은 파일 기준입니다. 더 늦게 받았다면 최신 달이 바뀌어 숫자가 다릅니다. 그때는 CSV를 엑셀로 열어 같은 방법으로 두 행만 찾아 나눠 봅니다.
| 카드 | 파일 | 찾을 행 | 계산 | 결과 |
|---|---|---|---|---|
| 2026년 9월 입도객 | ijto-17.csv | 2026-09의 total 1,123,339 / 2025-09의 total 1,181,507 | 1,123,339 ÷ 1,181,507 − 1 | −4.9% |
| 2026년 1~9월 누계 | ijto-17.csv | 2026-01~2026-09 total 9행 합 10,475,270 / 2025-01~2025-09 합 10,165,398 | 10,475,270 ÷ 10,165,398 − 1 | +3.0% |
| 2026년 9월 외국인 | ijto-17.csv | 2026-09의 foreign 253,386 / 2025-09의 foreign 218,198 | 253,386 ÷ 218,198 − 1 | +16.1% |
| 2026년 10월 공항 도착 여객 | kac-cju-monthly.csv | 2026-10의 arr_passengers 1,334,129 / 2025-10의 arr_passengers 1,393,429 | 1,334,129 ÷ 1,393,429 − 1 | −4.3% |
숫자 말고도 볼 것이 있습니다.
- 카드마다 몇 년 몇 월인지 적혀 있나. 입도객은 9월까지, 공항 여객은 10월까지라 최신 달이 다릅니다. "10월 입도객"이라고 적혀 있으면 틀린 것입니다.
- 누계를 같은 기간끼리 비교했나. 올해 1~9월은 작년 1~9월과 비교해야 합니다. 작년 1년 전체와 비교했다면 다시 시킵니다.
- 출처 줄이 있나. 원출처 두 곳과 '제주 AI 관광데이터허브 경유', 받은 날짜가 들어 있어야 합니다.
- 선그래프 세로축이 어디서 시작하나. 이 완성본처럼 70만 명에서 시작하면 작은 차이도 크게 보입니다. 크기는 카드와 표의 숫자로 판단합니다.
- 공항 여객을 관광객이라고 쓰지 않았나. 공항 여객에는 도민과 환승객이 들어 있습니다. 흐름을 먼저 보는 숫자로만 씁니다.
9·10월 비교에 섞이는 것: 추석 연휴가 2025년은 10월 3~9일, 2026년은 9월 24~26일이었습니다. 연휴가 든 달이 해마다 달라서, 9월과 10월의 '작년 같은 달 대비'에는 연휴 차이가 섞입니다. 데이터허브의 '국내외 주요 사건 연표'(events)에 2013년부터의 설·추석 날짜가 출처(한국천문연구원)와 함께 있습니다.
7. 우리 팀 숫자로 바꾸려면
다른 데이터를 쓰고 싶으면 데이터허브 첫 화면의 [전체 데이터 프롬프트 복사]를 누릅니다. 59종의 이름·기간·CSV 주소가 든 글이 복사되고, 맨 끝에 '제 질문'을 적는 자리가 있습니다. 대화창에 붙인 뒤 그 자리에 이렇게 적습니다.
우리는 제주에서 기업 교육을 하는 회사야. 매달 팀 회의에서 볼 바깥 숫자를 3개만 골라 줘.
데이터 ID, 왜 그 숫자인지, 몇 월까지 나와 있는지를 한 줄씩 적어 줘.
고른 데이터마다 화면 주소(https://data.wenivops.co.kr/d/데이터ID)도 붙여 줘.
AI가 붙여 준 화면 주소로 들어가 이용조건을 보고(아래), CSV를 받아 4절처럼 첨부하고, 요청문의 파일 이름과 카드 내용만 바꿉니다. 회사 업종에 따라 렌터카 가동률, 제주 일별 날씨(기상청), 제주공항 일별 도착 편수 같은 데이터가 맞을 수 있습니다.
데이터를 고를 때는 '데이터 정보'의 이용조건을 봅니다. 공공누리 제1유형이나 공공데이터포털 '이용허락범위 제한 없음'처럼 조건이 적힌 데이터를 먼저 씁니다. 이용조건 칸에 '이용조건 미표기 (원문 확인 필요)'라고 나오는 데이터, 카드사·통신사 데이터처럼 원천의 조건을 따로 확인해야 하는 데이터는 외부에 내는 문서에 쓰기 전에 [원천 페이지 열기]로 원문에서 조건을 확인합니다.
추세를 나누어 보고, 계절성을 읽고, 다음 달을 예측하는 분석 자체는 이 책에서 다루지 않습니다. 같은 데이터로 그 과정을 차례대로 해 보는 교안이 『AI 데이터 분석 트랙』의 오프라인 3교시입니다. 이 책은 그렇게 나온 숫자를 매달 같은 모양으로 다시 받아 보고, 보고서에 근거로 넣는 쪽을 맡습니다.
마지막 수정