DEVLOG · tech study series 2026-09-01
데이터 전처리·시각화 이론 학습 로드맵 data-preprocessing visualization theory eda moc
목차
도구(NumPy·pandas·matplotlib) 사용법과 별개로, "왜 이렇게 전처리하는가 / 왜 이 그래프인가" 를 설명하는 이론 목차입니다.
도구 시리즈(Python - NumPy MOC, Python - pandas MOC)와 짝을 이루며, 각 항목은 나중에 개별 노트로 확장할 수 있습니다.
🧭 두 축
도구 사용법은 Python - matplotlib MOC(저수준·완전 제어) · Python - seaborn MOC(통계 그래프 고수준 API)에서 다룹니다.
1부. 데이터 전처리 이론
1.1 데이터의 타입과 척도
→ 상세(1.1~1.2): 데이터 전처리 이론 01. 데이터의 척도와 EDA 기초
측정 척도: 명목(nominal) / 순서(ordinal) / 등간(interval) / 비율(ratio)
정형 / 반정형 / 비정형, 범주형 vs 수치형(이산·연속)
척도가 이후 인코딩·스케일링·통계량 선택을 결정하는 이유
1.2 탐색적 데이터 분석(EDA) 기초
분포의 형태: 중심경향(평균·중앙값·최빈값), 산포(분산·표준편차·IQR·MAD)
왜도(skewness)·첨도(kurtosis), 정규성 가정의 의미
단변량 → 이변량 → 다변량 순서, 상관 ≠ 인과
1.3 결측치 이론
→ 상세(1.3): 데이터 전처리 이론 02. 결측치 이론 (MCAR·MAR·MNAR)
결측 메커니즘: MCAR / MAR / MNAR -무엇을 가정하느냐에 따라 처리가 달라짐
단순 대치(평균·중앙값·최빈값·상수)의 편향, 분산 축소 문제
다중 대치(multiple imputation), KNN·모델 기반 대치의 개념
"삭제 vs 대치"의 판단 기준(결측 비율, 메커니즘, 표본 크기)
1.4 이상치 이론
→ 상세(1.4): 데이터 전처리 이론 03. 이상치 이론
이상치의 정의: 오류인가, 드문 진짜 값인가
탐지 기법의 가정: IQR 규칙, z-score(정규성 전제), MAD(로버스트), Isolation Forest·LOF(개념)
처리 선택: 제거 / 윈저라이징(클리핑) / 변환 / 별도 모델
1.5 스케일링·정규화 이론
→ 상세(1.5~1.6): 데이터 전처리 이론 04. 스케일링과 범주형 인코딩
표준화(z-score) vs 정규화(min-max) vs 로버스트 스케일링의 전제
스케일이 중요한 모델: 거리 기반(KNN·k-means·SVM), 경사하강(선형·신경망), 정규화 항(L1/L2)
스케일이 무관한 모델: 트리 계열
train 통계로 fit → test에 transform (누수 방지)
1.6 범주형 인코딩 이론
명목형: 원-핫 인코딩, 더미변수 함정 (다중공선성), 희소성
순서형: ordinal 인코딩(순서 정보 보존)
고카디널리티: 타깃(mean) 인코딩과 타깃 누수 , 해싱 트릭, 빈도 인코딩
트리 모델과 인코딩의 상호작용
1.7 변수 변환
→ 상세(1.7~1.9): 데이터 전처리 이론 05. 변수 변환·특성 공학·차원 축소
치우친 분포 보정: 로그 / 제곱근 / Box-Cox / Yeo-Johnson
구간화(binning)의 트레이드오프: 노이즈 완화 ↔ 정보 손실
정규화가 아닌 "분포 모양 바꾸기"라는 점
1.8 특성 공학(feature engineering) 개념
도메인 파생 변수, 상호작용·다항 항
날짜/시간 분해, 텍스트→수치, 집계 특성
특성이 많아질 때의 위험(과적합, 차원의 저주 → 1.9)
1.9 차원 축소 이론
차원의 저주: 고차원에서 거리·밀도가 무의미해지는 현상
특성 선택(subset) vs 특성 추출(투영)
PCA: 분산 최대 방향으로 투영(공분산 고유분해 = 중심화 데이터의 SVD, → Python - NumPy 10. 선형대수 기초)
t-SNE / UMAP: 국소 구조 보존 시각화용, 거리 해석 주의
1.10 불균형 데이터
→ 상세(1.10~1.12): 데이터 전처리 이론 06. 불균형·데이터 누수·재현성
소수 클래스 문제, 정확도(accuracy)의 함정
리샘플링: 오버샘플링 / 언더샘플링 / SMOTE(개념)
평가지표 전환: precision·recall·F1·PR-AUC, 임계값 조정
1.11 데이터 누수(data leakage)
전처리 시점 누수: 전체 데이터로 스케일러·인코더를 fit하면 test 정보가 샘
시간 누수: 미래 정보가 과거 예측에 들어감
교차검증 내부에 전처리를 포함(Pipeline)해야 하는 이유
1.12 재현성
랜덤 시드 고정(분할·리샘플링·모델)
전처리 파이프라인화(순서·파라미터를 코드로 고정)
데이터 버전·스키마 관리
2부. 시각화 이론
2.1 시각화의 목적
→ 상세(2.1~2.2): 데이터 시각화 이론 01. 목적과 그래프 문법
탐색적(exploratory) vs 설명적(explanatory) 시각화 -청중과 목적이 다름
"무엇을 말하려는가"가 차트 종류보다 먼저
2.2 그래프 문법(Grammar of Graphics)
구성 요소: 데이터 → 미학 매핑(aesthetic) → 기하 객체(geom) → 스케일 → 좌표계 → facet
seaborn·altair·ggplot이 공유하는 사고 틀
2.3 데이터 타입별 차트 선택
→ 상세(2.3): 데이터 시각화 이론 02. 데이터 타입별 차트 선택
분포(1변수): 히스토그램, KDE, 박스플롯, 바이올린, ECDF
관계(2변수 수치): 산점도, 라인(순서 있는 x)
비교(범주): 막대그래프(가로/세로), 점 그래프
구성비: 누적 막대(제한적), 파이차트 지양 이유
시간: 라인, 영역, 캘린더 히트맵
2.4 시지각 원리
→ 상세(2.4): 데이터 시각화 이론 03. 시지각 원리
정량 인코딩 정확도 순위(Cleveland–McGill): 위치 > 길이 > 기울기 > 각도 > 면적 > 색상 명도
전주의적 속성(preattentive attributes): 색상·크기·방향·위치
게슈탈트 원리(근접·유사·연속·폐쇄)와 그룹 지각
2.5 색상 이론
→ 상세(2.5~2.6): 데이터 시각화 이론 04. 색상·축·스케일
팔레트 유형: 순차형(sequential) / 발산형(diverging) / 범주형(qualitative)
색맹 접근성(약 8% 남성), 명도 대비, 인쇄/흑백 복사 고려
색상은 정확한 정량 비교에 약함 → 보조 채널로
2.6 축과 스케일
0 기준선: 막대는 필수, 라인은 맥락에 따라
로그 스케일: 배수 변화·넓은 범위
이중 축(dual axis)의 위험(상관 착시), 종횡비(aspect ratio)와 기울기 판단
2.7 다변량 표현
→ 상세(2.7~2.11): 데이터 시각화 이론 05. 다변량 표현·오해 유발·스토리텔링
채널 추가: 색·크기·모양·facet(small multiples)
상관 히트맵, 페어플롯(scatter matrix), 평행좌표
small multiples가 3D·과밀 차트보다 나은 경우
2.8 오해를 부르는 시각화
잘린 축(truncated axis), 체리피킹된 구간
왜곡된 종횡비, 면적으로 1차원 값 표현(버블), 3D 파이
2.9 과밀·대용량 데이터
오버플로팅 대응: 투명도(alpha), 지터(jitter), hexbin, 2D 밀도, 샘플링
대용량에서 집계 후 시각화
2.10 도구 지형
matplotlib: 저수준·완전 제어, 세밀한 커스터마이징
seaborn: 통계 그래프 고수준 API, 분포·범주·관계 함수
pandas .plot: 빠른 탐색
plotly / altair: 선언적·인터랙티브, 대시보드
2.11 전달·스토리텔링
데이터-잉크 비율(Tufte), 불필요한 장식(chartjunk) 제거
제목은 결론을 말하게, 주석으로 핵심 지점 강조
하나의 그림 = 하나의 메시지
🔗 학습 순서 권장
text Copy
[전처리 이론 1.1~1.4: 데이터 이해·결측·이상치]
↓
[NumPy/pandas 실습] ←→ [전처리 이론 1.5~1.8: 스케일·인코딩·변환·FE]
↓
[전처리 이론 1.9~1.12: 차원축소·불균형·누수·재현성]
↓
[시각화 이론 2.1~2.4: 목적·문법·차트 선택·시지각]
↓
[matplotlib/seaborn 실습] ←→ [시각화 이론 2.5~2.11]
이어서 볼 질문
MCAR·MAR·MNAR는 실제로 어떻게 구분하는가
타깃 인코딩의 누수를 막는 교차 검증 방식은
PCA와 t-SNE는 각각 언제 쓰는가
Cleveland–McGill 정확도 순위를 차트 선택에 어떻게 적용하는가
seaborn과 matplotlib의 역할 분담 기준은
댓글
GitHub 계정으로 의견이나 질문을 남길 수 있습니다.