현대적이며 모범적인 데이터분석 패턴

Kaggle Grandmaster인 Srinivas Ramakrishna(SRK)가 자주 사용하는 EDA 패턴

Mercedes-Benz Greener Manufacturing
https://www.kaggle.com/competitions/mercedes-benz-greener-manufacturing/


SRK 노트북의 전체 구조

그의 분석 흐름은 아래 7단계로 정리됩니다.

1. 데이터 로딩
2. Target 분석
3. 변수 유형 분석
4. 범주형 변수 분석
5. 이진 변수 분석
6. 데이터셋 분포 검증
7. Feature Importance 분석

이 구조는 거의 모든 머신러닝 프로젝트에 재사용 가능합니다.


1단계 : 데이터 개요 파악

SRK는 가장 먼저

train.shape
test.shape
head()

를 확인합니다.

확인 내용

  • 행(Row)
  • 열(Column)
  • Train/Test 크기
  • Target 존재 여부

일반 프로젝트 적용

항상 가장 먼저 확인

df.shape
df.head()
df.info()
df.describe()

체크리스트

  • 샘플 수 충분한가?
  • Feature 수 과도한가?
  • 결측치 있는가?
  • 데이터 타입은 무엇인가?

2단계 : Target 분석

SRK가 가장 먼저 깊게 보는 것은

y

입니다.


사용한 시각화

Scatter Plot

plt.scatter(...)

목적

  • 이상치 탐지

Histogram

sns.distplot()

목적

  • 분포 확인

일반 프로젝트 적용

예측 모델의 50%는 Target 분석에서 결정됩니다.

반드시 확인

회귀

histplot(y)
boxplot(y)

확인사항

  • 정규분포 여부
  • 왜도(Skewness)
  • 이상치

분류

value_counts()

확인사항

  • 클래스 불균형

3단계 : 데이터 타입 분석

SRK는 곧바로

df.dtypes

를 분석합니다.


Mercedes 데이터에서는

object
int64
float64

로 분류


왜 중요한가?

전처리 전략이 달라짐

타입처리방법
NumericScaling
CategoricalEncoding
TextNLP
DatetimeFeature Extraction

실무 체크

df.select_dtypes(...)

으로

  • 숫자형
  • 범주형

개수 확인


4단계 : 범주형 변수 분석

SRK가 가장 많이 사용한 기법

sns.boxplot()

X2 vs y
X5 vs y
X6 vs y

시각적으로

카테고리별
Target 평균 차이

를 확인


일반 프로젝트 적용

예)

고객 이탈 예측

성별 vs 이탈
지역 vs 이탈
상품 vs 이탈

추천 시각화

boxplot
violinplot
barplot

5단계 : 이진(Binary) 변수 분석

Mercedes 데이터의 핵심

0
1

옵션 변수


SRK는

groupby
mean

으로

0일 때 평균 y
1일 때 평균 y

를 비교


왜 중요한가?

매우 강력한 Feature 발견 가능

예)

X314 = 1
평균 y = 120

X314 = 0
평균 y = 95

이면

중요 변수일 가능성 높음


실무 적용

마케팅 데이터

쿠폰 사용 여부
앱 설치 여부
구독 여부

보험 데이터

흡연 여부
사고 이력 여부

6단계 : Train/Test 분포 검증

이 부분이 SRK 스타일의 핵심입니다.

그는

ID

를 이용해

violinplot

을 그림


목적

Train
Test

분포 차이 확인

왜 중요한가?

실무에서 자주 발생

학습 데이터
운영 데이터

분포가 다름


이를

Dataset Shift

또는

Data Drift

라고 부름


실무에서는 반드시

train.describe()
test.describe()

비교


7단계 : Feature Importance 분석

여기서부터 EDA가 끝나고

모델 기반 분석이 시작됩니다.


SRK는

XGBoost

사용

xgb.train()

이후

plot_importance()

중요 변수 확인


추가로

Random Forest

사용

feature_importances_

두 모델 결과 비교


중요한 통찰

SRK는

모델 성능

보다

어떤 변수가 중요한가?

를 먼저 봅니다.


SRK 스타일 EDA 템플릿

새로운 데이터를 받으면 항상 아래 순서로 진행하면 됩니다.

STEP 1
데이터 개요

shape
head
info
describe

↓

STEP 2
Target 분석

Histogram
Boxplot
Outlier

↓

STEP 3
결측치 분석

Missing Value

↓

STEP 4
변수 유형 분석

Numeric
Categorical
Binary

↓

STEP 5
범주형 변수 분석

Boxplot
Mean Comparison

↓

STEP 6
상관관계 분석

Correlation Matrix

↓

STEP 7
Train/Test 분포 비교

Data Drift

↓

STEP 8
Feature Importance

XGBoost
Random Forest

↓

STEP 9
모델링

AX 실무 관점에서 업그레이드할 부분

SRK 노트북은 2017년 작성본이라 현재 기준으로는 부족한 부분도 있습니다.

추가하면 좋은 분석

SRK 노트북현재 추천
HistogramHistogram + KDE
BoxplotBoxplot + Violinplot
CorrelationHeatmap
Feature ImportanceSHAP
Random ForestLightGBM
XGBoostCatBoost 추가
수작업 EDAChatGPT/Claude 활용

즉시 실행 가능한 액션 아이템

앞으로 새로운 데이터셋을 받으면 아래 5개 그래프를 반드시 먼저 생성해 보세요.

  1. Target Distribution
  2. Missing Value Bar Chart
  3. Correlation Heatmap
  4. Top 20 Feature Importance
  5. Train/Test Distribution Comparison

이 5개만 만들어도 전체 데이터의 70~80% 특성을 빠르게 이해할 수 있으며, SRK가 사용한 탐색적 데이터 분석 방식의 핵심을 대부분 재현할 수 있습니다.

답글 남기기