Skip to the content.

데이터저널리즘 — 강의개요

**경희대학교 미디어학과 JCOMM305900 월수 10:30~11:45 정408**

담당교수: 이종혁 (정경대 교수회관 620호, 02-961-2179, jonghhhh@khu.ac.kr)

← 주차별 수업 내용으로 돌아가기


수업 목표

수업 개요

본 수업은 기초 → 수집 → 분석 → 시각화 → 웹앱 5단계로 구성된다. 전 과정에서 VSCode + Gemini CLI를 활용한 프롬프트코딩 환경을 기본으로 사용한다. 전반부(1-4주)에서 파이썬 기초와 Pandas를 학습하고, 데이터 수집(5-6주)에서 크롤링·API·PDF OCR 등 실제 언론사 취재팀의 수집 방법을 다루며, LLM 대량 분석(7주)을 거쳐 JavaScript 인터랙티브 시각화(8-10주)에서 그래프·네트워크·지도·Scrollytelling을 구현한다. 후반부(11-13주)에서는 Streamlit을 통합 플랫폼으로 사용하여 JS 시각화를 임베드하고, 맞춤형 검색·필터링 인터페이스를 구축하며, Gemini File Search 기반 RAG 챗봇을 간단히 구현하여 하나의 데이터저널리즘 웹앱으로 통합 배포한다.


수업 데이터: 전국교통사고다발지역 표준데이터 (2025)


개발환경


기술 아키텍처

┌─────────────────────────────────────────────────┐
│                  Streamlit 웹앱                    │
│                                                   │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐       │
│  │ 네이티브  │  │ JS 시각화 │  │  챗봇    │       │
│  │  위젯    │  │ (임베드)  │  │ (RAG)   │       │
│  │          │  │          │  │          │       │
│  │ selectbox│  │ Chart.js │  │ File     │       │
│  │ slider   │→│ Leaflet  │  │ Search   │       │
│  │ text_in  │  │ vis.js   │  │ +chat_in │       │
│  │ columns  │  │ Scrollama│  │          │       │
│  └──────────┘  └──────────┘  └──────────┘       │
│        ↕              ↑              ↑           │
│     Pandas         JSON 주입    Gemini API       │
│    필터·집계      components     File Search      │
│                   .html()                        │
└─────────────────────────────────────────────────┘
        ↓ 배포
   Hugging Face Spaces / Streamlit Cloud

핵심 AI 모델 & 도구

도구 용도 비용
Gemini CLI (VSCode) 프롬프트코딩 — Python/JS/HTML 코드 생성·수정·디버깅 무료
Gemini 2.5 Flash-Lite API 텍스트·이미지 대량 분석, 분류, 요약 (1,000건/일) 무료
Gemini File Search 관리형 RAG — CSV·PDF 업로드 → 의미 검색 Q&A 챗봇 인덱싱만 유료
Streamlit 통합 웹앱 플랫폼 — UI + 검색 + 시각화 임베드 + 챗봇 무료
구글 시트 =AI() 함수 스프레드시트에서 대량 텍스트 분류·요약 자동화 Workspace 플랜
NotebookLM 문서 요약, FAQ, 타임라인, 오디오 브리핑 생성 무료

평가 방법

항목 비율 세부
출석 10%  
참여 10% 수업 내 실습 참여, 질문·토론
AI 활용 데이터분석 능력 테스트 30% 코드리딩 + AI 프롬프트 작성 + 프롬프트코딩 실기
조별 프로젝트 기획안 10% 중간고사 대체 (8주차 제출)
조별 최종 프로젝트 40% Streamlit 웹앱 + 취재노트 + 발표 + 조원평가

주차별 일정 요약

주차 날짜 비고 단계 내용
1 3/4(수) ⚠️ 3/2 대체공휴일 기초 데이터저널리즘 소개, VSCode+Gemini CLI 설정
2 3/9, 3/11   기초 파이썬 기초 (1)
3 3/16, 3/18   기초 파이썬 기초 (2)
4 3/23, 3/25   기초 Pandas 데이터 분석
5 3/30, 4/1   수집 웹 기초 + 프롬프트코딩 + 웹스크래핑
6 4/6, 4/8   수집 API · PDF OCR · 정보공개청구
7 4/13, 4/15   분석 데이터 정제 + LLM API 대량 분석
8 4/20, 4/22 ★ 기획안 제출 시각화 JS 입문 + Chart.js 인터랙티브 그래프
9 4/27, 4/29   시각화 네트워크(vis.js) + 지도(Leaflet)
10 5/4, 5/6   시각화 Scrollytelling + 시각화 종합
11 5/11, 5/13   웹앱 Streamlit 입문 & JS 시각화 임베드
12 5/18, 5/20   웹앱 맞춤형 데이터 검색 & 통합 대시보드
13 5/27(수) ⚠️ 5/25 대체공휴일 웹앱 RAG 챗봇 (간단) & 최종 통합
14 6/1(월) ⚠️ 6/3 지방선거 웹앱 취재 방법론 + 배포 + 최종 점검
15 6/8, 6/10   발표 조별 발표
16 6/15, 6/17 시험 평가 데이터처리능력 테스트

주요 데이터 취재처

국내

취재처 URL 활용
공공데이터포털 data.go.kr 10만+ 데이터셋, Open API
KOSIS kosis.kr 400+ 기관 통계
DART dart.fss.or.kr 기업 공시, 재무제표
국회 의안정보 likms.assembly.go.kr/bill 발의법안, 표결
빅카인즈 bigkinds.or.kr 뉴스 아카이브 (54매체)
정보공개포털 open.go.kr 정보공개청구
뉴스타파 DATA data.newstapa.org 탐사보도 원본 데이터

국제

취재처 URL 활용
ICIJ Offshore Leaks offshoreleaks.icij.org 역외법인 DB
OCCRP Aleph aleph.occrp.org 글로벌 문서·기업 DB
SEC EDGAR sec.gov/edgar 미국 기업 공시
Bellingcat Toolkit bellingcat.gitbook.io/toolkit OSINT 도구
GIJN 리소스 gijn.org/resource 탐사보도 가이드

교재

데이터저널리즘

파이썬

HTML · CSS · JavaScript (한국어 입문)

AI · LLM

JavaScript 시각화 라이브러리

Streamlit

코딩 실습 · 커뮤니티

탐사보도 · OSINT · 디지털 보안