EDA — 탐색적 데이터분석 (GeeksforGeeks)

Source: https://www.geeksforgeeks.org/data-analysis/exploratory-data-analysis-in-python/ Type: Article By: GeeksforGeeks Valid as of: 2026-04-26

핵심 Takeaway

  • EDA는 데이터의 주요 특성을 통계·시각화로 요약하는 단계로, 머신러닝 모델 적용 전 필수
  • 데이터 검사, 결측치·중복 제거, 단변량·이변량·다변량 분석 3계층 구조로 진행
  • 판다스 df.shape, df.info(), df.describe().T로 데이터 기본 현황 파악
  • 결측치는 isnull().sum(), 중복은 duplicated().sum()으로 식별하고 제거
  • 시각화: 막대 그래프(범주형) → 커널밀도(연속), 바이올린·박스플롯(분포) → 히트맵(상관)
  • IQR(사분위간 거리) 기법으로 이상치 탐지; 히트맵에서 +1/-1 근처 강한 상관 식별

상세 요약

EDA 개요 및 핵심 개념

EDA는 데이터셋의 주요 특성을 통계량과 시각화로 요약하는 분석 기법이다. 머신러닝 모델을 적용하기 전 데이터의 패턴, 이상치, 결측치를 이해하는 데 필수적이다.

EDA의 중심 원칙:

  • 8개 단계: Import → Load → 자료형 확인 → 불필요 컬럼 제거 → 컬럼명 정리 → 중복 제거 → 결측치 처리 → 이상치 탐지 → 시각화
  • 각 단계에서 데이터 크기 및 구조 변화를 추적 (예: 11,914행 → 중복 제거 후 9,191행)

데이터 품질 검사

라이브러리 임포트:

  • pandas, numpy: 데이터 조작
  • matplotlib, seaborn: 정적 시각화
  • plotly: 대시보드형 인터랙티브 플롯

기본 현황 파악:

  • df.shape: 행/열 개수
  • df.info(): 자료형, 결측치 개수
  • df.describe().T: 통계 요약(평균, 표준편차, 사분위수)

결측치 & 중복:

  • df.isnull().sum(): 각 컬럼별 결측치 개수 (예: 99개)
  • df.duplicated().sum(): 완전 중복 행 개수 (예: 989개)

이상치 탐지 (Outlier Detection)

IQR 기법 (Interquartile Range):

  • 사분위수 Q1(25%), Q3(75%) 계산
  • IQR = Q3 - Q1
  • 하한: Q1 - 1.5 × IQR, 상한: Q3 + 1.5 × IQR
  • 범위 밖의 값이 이상치로 표기됨 (예: 약 1,600개 행 식별)

시각화 기법 4단계

1단계 — 단변량 분석 (Univariate):

  • 막대 그래프: 범주형 변수 분포
  • 커널밀도플롯(KDE): 연속변수 패턴
  • Swarm plot: 개별 값 분포 및 이상치

2단계 — 이변량 분석 (Bivariate):

  • Pair plot: 모든 변수 쌍의 분포 및 산점도
  • 바이올린플롯: 범주 간 연속변수 분포 비교
  • 박스플롯: 중앙값, 사분위수, 이상치 시각화

3단계 — 다변량 분석 (Multivariate):

  • 상관 히트맵: 모든 수치형 변수 간 관계
    • +1에 근접: 강한 양의 상관
    • -1에 근접: 강한 음의 상관
    • 0 근처: 상관 없음

선행 개념

이 개념을 배우기 전에 필수로 알아야 할 것:

  • Module 1-3 → python-venv-poetry-conda-leapcell: pandas, matplotlib, seaborn 라이브러리 설치
    • 왜?: EDA는 이 도구들을 실제로 사용하므로, 먼저 환경설정으로 이들을 설치해야 함
  • 기본 파이썬: 변수, 리스트, 딕셔너리, 반복문 등

후속 개념 (이 개념이 선행)

이 개념을 배운 후 다음 단계:

  1. Module 2-3 → data-visualization-3-layer-guide: EDA의 시각화 부분을 심화
    • 이 소스: EDA의 8단계 프로세스 전체 (로드 → 전처리 → 시각화)
    • 다음 단계: 시각화의 3계층(단변량 → 이변량 → 다변량) 설계 기법 심화
  2. Module 3 (ML) 진행 시: 정제된 데이터로 Decision Tree 등 모델 학습
    • 이 소스에서 수행한 EDA가 모델 성능의 기반이 됨

연결되는 위키 페이지