본문으로 건너뛰기

04-099. 이론

데이터 전처리 - 깊이 알아두기

데이터 전처리는 데이터에 어떤 처리를 하는데 데이터 프로세싱이 대부분이다. 데이터 분석 또는 모델링을 하기 전에 데이터 전처리에 많은 시간을 쓰는 이유는 시행착오를 반복해야 하는 일이 많기 때문이다. 시행착오를 하지 않을 수는 없다. 분석을 어떤 방향으로 하고 모델링을 어떻게 해야 할지는 데이터 전처리를 여러 방법으로 다르게 해보면서 잡아가야 하기 때문이다.

데이터 전처리의 종류

데이터 전처리에서 어떤 일을 하는지 알아보자. AI챗봇에게 물어봐서 데이터 전처리가 어떤 일을 하는지 알 수 있다.

((*프롬프트 시작 *)) 데이터 전처리에서 하는 일을 알려주세요 ※ 내용이 모델마다 다소 다르게 나오지만 큰 틀에서는 차이가 없음 ((프롬프트 끝))

전처리에서 하는 일을 알아보자

결측치 처리(Missing Value Handling)
데이터에 비어 있거나 누락된 값이 있는 경우, 이를 삭제하거나 적절한 값으로 대체합니다.

이상치 처리(Outlier Handling)
데이터에서 비정상적으로 크거나 작은 값(이상치)을 탐지하고, 필요에 따라 제거하거나 수정합니다.

데이터 정제(Data Cleaning)
오타, 중복, 불필요한 공백 등 잘못된 데이터를 수정하거나 제거합니다.

데이터 변환(Data Transformation)
데이터의 단위 변환, 스케일링(정규화, 표준화), 로그 변환 등 분석에 적합한 형태로 데이터를 변환합니다.

데이터 인코딩(Data Encoding)
범주형 데이터를 숫자형 데이터로 변환(예: 원-핫 인코딩, 레이블 인코딩)합니다.

데이터 통합(Data Integration)
여러 데이터 소스를 합치거나, 필요한 컬럼만 추출하여 새로운 데이터셋을 만듭니다.

특성 선택 및 추출(Feature Selection & Extraction)
분석에 필요한 변수(특성)만 선택하거나, 새로운 변수를 생성합니다.

데이터 샘플링(Data Sampling)
전체 데이터에서 일부만 추출하여 분석에 사용하거나, 데이터의 불균형을 해소합니다.

**데이터 분할(Data splitting) 기계학습을 위해서 데이터를 학습데이터와 테스트데이터로 분할합니다.

데이터 정규화/표준화(Normalization/Standardization) 서로 다른 척도의 변수들을 동일한 범위로 맞춰줍니다. 예를 들어 나이(0-100)와 소득(수천만원대)을 함께 사용할 때 스케일을 맞춰야 합니다.

피처 엔지니어링(Feature Engineering) 기존 변수들을 조합하거나 변형해서 새로운 의미 있는 변수를 만듭니다. 생년월일에서 나이를 계산하거나, 구매 빈도와 금액으로 고객 등급을 만드는 것이 예시입니다.

데이터 통합(Data Integration) 여러 소스의 데이터를 결합합니다. 고객 정보 테이블과 구매 이력 테이블을 조인하거나, 서로 다른 형식의 파일들을 하나로 합치는 작업입니다.

이러한 전처리 과정을 통해 데이터의 품질을 높이고, 분석 결과의 정확성과 신뢰성을 확보할 수 있습니다. 전체 데이터 분석 프로젝트에서 전처리가 차지하는 비중은 보통 70-80% 정도로, 매우 중요하고 시간이 많이 소요되는 단계입니다.

데이터 랭글링과 데이터 먼징

데이터 전처리는 데이터를 분석할 때 하는 여러 계산을 하기 전에 먼저 하는 데이터 정리 작업을 말한다. 데이터 랭글링(Data Wrangling) 또는 데이터 먼징(Data Munging)이라고도 하며 데이터 클리닝(Data Cleaning)이라고 하는 작업도 있다. 데이터 분석을 하기 위해서는 데이터에서 통곗값과 패턴을 파악하기 위한 값들을 추출하는 일을 하는데 평균, 표준편차, 최댓값, 최솟값, 중위수 이런 값들을 비롯해서 어러 작업들이 있다. 이런 작업을 하기 전에 깨진 값이나 잘못된 값이 있으면 보정하거나 제거하고 포맷이 다르다면 포맷을 맞추고 쓸모 는 것은 버리는 작업들이 필요한다. 이 작업을 하는 과정을 데이터 전처리라는 말로 표현한다.

데이터 전처리는 데이터베이스에서 하기도 하고 엑셀같은 스프레드시트에서 하기도 하며 Python이나 R과 같은 프로그래밍 언어로 하기도 하며 별도의 데이터 전처리 도구를 쓰기도 한다. 어디서 하든지 상관없으며 가장 효율적으로 할 수 있는 것을 선택해서 쓴다. 여러 가지 도구를 함께 사용해서 전처리를 하는 경우도 많다. 데이터 전처리에 반대되는 데이터 후처리라는 말은 사용하지 않는다. 데이터 후처리를 할 일이 실제로 없기 때문이다. 굳이 데이터 후처리를 한다고 하면 집계되거 분석에서 나온 결과값을 보기좋게 다시 가공하는 정도가 되겠다. 실제로 쓰이지 않는 용어이다. 데이터 전처리 후에는 데이터 분석 또는 데이터 모델링을 하게 된다.