AI/파이썬 머신러닝 완벽 가이드

분류 실습 with 산탄데르 고객 만족 예측

ardoh 2024. 7. 26. 21:25

[Step 1] 데이터 로딩

캐글 사이트에서 데이터를 다운로드 한다. 

https://www.kaggle.com/competitions/santander-customer-satisfaction/data

 

Santander Customer Satisfaction | Kaggle

 

www.kaggle.com

 

고객만족 여부를 XGBoost 와 LightGBM 을 활용해 예측해보자. 클래스 레이블 명은 Target 이고, 이 값이 1이면 불만, 0이면 만족한 고객이다.
대부분이 만족이고 일부만 불만족이기 때문에 모델 성능 평가로는 ROC-AUC 가 적합하다.

 

[Step 2] 데이터 확인

🧡 info()

칼럼은 371개 이다. 데이터 타입은 float 와 int 이다. Null 값은 없다. 

 

🧡 value_counts()

해당 칼럼값의 유형과 건수를 알 수 있다. value_counts 로 전체 데이터에서 만족과 불만족의 비율을 살펴보자. 대부분 만족이다. 불만족인 고객은 4%이다. 

🧡 describe()

개략적인 데이터 분포도를 확인할 수 있다. count 는 not null 인 데이터 건수, std 는 표준편차를 의미한다. 

 

[Step 3] 이상치 처리

var3의 min 값을 보면 -999999이다. 수상한 숫자이다. NaN이나 특정 예외 값을 -999999로 변환한 듯하다. value_counts() 로 자세히 살펴보자. 

 역시나 -999999 혼자 다른 값에 비해 편차가 심하다. 가장 빈도가 높은 값인 2로 변환을 해주자.

 

 

[Step 3] 결손값 처리

머신러닝 알고리즘에서 NaN 값은 평균, 총합 등의 함수 연산 시 제외가 된다. 따라서 NaN 값은 다른 값으로 대체해야 한다. NaN 값이 대부분이면 해당 칼럼을 드롭하는 것이 좋다. 

 

[Step 4] 문자열 피처 처리

 

[Step 5] 레이블 인코딩

'AI > 파이썬 머신러닝 완벽 가이드' 카테고리의 다른 글

과적합, 과소적합 & 규제 선형 회귀  (0) 2024.09.26
SVM  (0) 2024.09.26
데이터 전처리 실습 with 타이타닉 생존자 예측  (0) 2024.07.16
회귀  (0) 2024.07.04
분류  (0) 2024.05.24