파이썬 활용 결측치 처리
이번 수업에서는 결측치(missing value)
를 처리하는 방법에 대해 더 자세히 알아보겠습니다.
결측치는 잘못된 AI 모델 학습과 분석 결과를 초래할 수 있으므로 데이터 전처리 과정에서 확실하게 처리하는 것이 중요합니다.
결측치는 왜 발생할까요?
결측치는 데이터셋을 만드는 과정에서 여러 가지 이유로 발생할 수 있습니다.
예를 들어 다음과 같은 경우가 있습니다.
-
설문조사에서 응답자가 일부 질문에 답하지 않은 경우
-
센서 데이터 수집 과정에서 오류가 발생한 경우
-
데이터베이스에서 특정 필드가 비어 있는 경우
결측치 처리 방법
결측치를 처리하는 방법에는 여러 가지가 있습니다.
대표적인 처리 방법은 다음과 같습니다.
1. 결측치 제거하기
결측치가 포함된 행 또는 열을 삭제하는 방법입니다.
데이터가 충분히 많을 때 유용하지만, 중요한 정보가 함께 삭제될 위험이 있습니다.
import pandas as pd df = pd.DataFrame({'이름': ['홍길동', '김철수', None], '나이': [25, None, 30]}) df_cleaned = df.dropna() # 결측치가 포함된 행 삭제
2. 평균 또는 중앙값으로 대체하기
연속형 데이터의 경우 평균 또는 중앙값으로 결측치를 대체할 수 있습니다.
df['나이'].fillna(df['나이'].mean(), inplace=True) # 평균값으로 대체
3. 특정 값으로 대체하기
카테고리형 데이터에서는 "알 수 없음"
등의 특정 값을 채워 넣는 방법도 있습니다.
df['이름'].fillna('이름 없음', inplace=True) # 특정 값으로 대체
4. AI 모델로 예측값 기입하기
머신러닝 모델을 사용하여 결측치를 예측하는 방법도 있습니다.
이 방법은 보다 정교한 처리가 가능하지만, 추가적인 연산 비용이 발생할 수 있습니다.
결측치 처리는 왜 중요할까요?
결측치를 올바르게 처리하지 않으면 분석 결과에 심각한 오류가 발생할 수 있습니다.
예를 들어 평균을 계산할 때 결측치를 포함하면 잘못된 결과가 나올 수 있습니다.
다음 수업에서는 지금까지 배운 내용들을 점검하는 간단한 퀴즈를 풀어보겠습니다.
Mission
0 / 1
다음 중 빈칸에 들어갈 가장 적절한 단어는 무엇인가요?
결측치를 지정된 값으로 대체하는 pandas 메서드는 입니다.
mean()
dropna()
fillna()
replace()
Lecture
AI Tutor
Design
Upload
Notes
Favorites
Help