Ch4. 데이터 전처리

데이터 전처리의 필요성
원본(Raw) 데이터는 대부분 정제되지 않은 상태이므로 분석에 바로 활용하기 어려움.
실무 데이터는 교육용 예제 데이터와 달리 지저분하고 복잡함.
따라서 데이터 분석 전, 데이터의 상태를 파악하고 정리하는 전처리 과정이 필수적임.
데이터 전처리 정의 및 비유
흩어진 데이터를 분석 가능한 형태로 정리하는 모든 과정을 '데이터 전처리'라 함.
이는 요리 전 재료를 손질하는 과정에 비유할 수 있음 (상한 부분 제거, 중복 재료 제외, 대체 재료 준비 등)
💬
실습 파일
Kaggle의 Titanic Dataset
*Kaggel(캐글)
데이터 과학과 머신러닝 분야 최대의 온라인 플랫폼으로, 전 세계 사용자가 데이터 경진대회에 참가하고, 실제 데이터를 활용해 다양한 분석·예측 모델을 만들고 공유할 수 있는 커뮤니티임.
구글(Google) 산하에서 운영되며, 대회(Competition), 데이터셋, 실습 노트북, 토론 포럼 등 데이터 사이언스 학습과 실력 검증에 필요한 모든 리소스를 무료로 제공함.

Data Dictionary

Variable
Definition
Key
survival
Survival
0 = No, 1 = Yes
pclass
Ticket class
1 = 1st, 2 = 2nd, 3 = 3rd
sex
Sex
Age
Age in years
sibsp
# of siblings / spouses aboard the Titanic (sister+brother+spouse)
parch
# of parents / children aboard the Titanic (parent + chile)
ticket
Ticket number
fare
Passenger fare
cabin
Cabin number
embarked
Port of Embarkation
C = Cherbourg, Q = Queenstown, S = Southampton

1. 데이터 살펴보기

파일 업로드 하고, 아래와 같이 입력
데이터 전처리가 필요한 부분을 확인해줘.
💬
gpt
데이터셋을 점검한 결과, 다음과 같은 전처리 필요 지점이 확인되었습니다 🔍

🧩 1. 결측치(Missing Values)

컬럼
결측 개수
비율
비고
Age
177
약 19.9%
평균/중앙값/그룹별 평균으로 대체 가능
Cabin
687
약 77.1%
결측률이 매우 높음 → 변수 제거 또는 'Unknown' 처리 고려
Embarked
2
약 0.2%
최빈값(S)으로 대체 가능

🧮 2. 데이터 타입(Data Type)

Pclass, Sex, Embarked범주형 변수(categorical) 로 인코딩 필요 (예: One-Hot Encoding 또는 Label Encoding).
Ticket, Name, Cabin문자열 → 직접 사용보다는 파생변수(feature extraction)로 가공 가능
예: Name → 호칭(Mr, Mrs 등) 추출
Ticket → 숫자/문자 분리 후 규칙성 확인

⚙️ 3. 이상치(Outliers) 후보

Fare: 일부 값이 매우 큰 것으로 알려져 있음 → 로그 변환(log-scaling) 검토
Age: 0세 미만 또는 80세 이상 등 극단값 확인 필요

🧠 4. 중복 데이터

PassengerId는 고유(unique)하므로 중복 행은 없음.
원하신다면,
다음 단계로
결측치 처리 및 이상치 탐지 시각화를 바로 수행할 수 있습니다.
원하시는가요?
→ 예를 들어:
Age 결측치는 중앙값으로 채우고, Cabin은 "Unknown" 처리, Embarked는 최빈값으로 대체하는 방식.
Contact : azureguy@empal.com / azureguy@cau.ac.kr