결측치 및 이상치: thresh 파라미터
ㅁ 결측치 및 이상치
ㅇ 정의:
데이터셋에서 결측치와 이상치를 처리하는 과정에서 특정 기준을 설정하여 데이터를 정제하는 기법을 포함.
ㅇ 특징:
– 결측치는 데이터가 비어있는 경우를 의미하며, 이상치는 정상 범위를 벗어난 데이터를 뜻함.
– 데이터의 품질을 높이기 위해 반드시 처리해야 함.
– 처리 방식에 따라 결과가 크게 달라질 수 있음.
ㅇ 적합한 경우:
– 데이터 분석 전 품질을 높이고자 할 때.
– 머신러닝 모델의 성능을 개선하고자 할 때.
ㅇ 시험 함정:
– 결측치와 이상치의 정의를 혼동하거나, 처리 방법을 잘못 선택하는 경우.
– 특정 처리 방식이 모든 상황에서 적합하다고 오해하는 경우.
ㅇ 시험 대비 “패턴 보기” 예시:
X: 결측치를 모두 제거하면 데이터 품질이 항상 높아진다.
O: 결측치 제거는 데이터 손실을 초래할 수 있어 신중히 선택해야 한다.
========================
1. thresh 파라미터
ㅇ 정의:
데이터프레임에서 결측치가 특정 열이나 행에서 지정된 임계값 이상일 경우 해당 데이터를 제거하는 기준값.
ㅇ 특징:
– 데이터의 행 또는 열을 기준으로 결측치 허용량을 설정 가능.
– 데이터 손실을 최소화하거나 품질을 높이는 데 활용됨.
ㅇ 적합한 경우:
– 데이터셋에 결측치가 많아 전체 행 또는 열의 제거가 필요할 때.
– 머신러닝 모델 학습에 필요한 필수 데이터만 남기고자 할 때.
ㅇ 시험 함정:
– 임계값 설정을 잘못하여 유효한 데이터가 과도하게 제거되는 경우.
– thresh 파라미터를 사용하는 상황을 혼동하여 잘못 적용하는 경우.
ㅇ 시험 대비 “패턴 보기” 예시:
X: thresh 파라미터는 데이터프레임에서 이상치를 제거하는 데 사용된다.
O: thresh 파라미터는 데이터프레임에서 결측치 허용 기준을 설정하는 데 사용된다.
ㅁ 추가 학습 내용
결측치 처리 방법:
1. 평균 대체: 데이터의 평균값으로 결측치를 대체하는 방법. 연속형 변수에서 자주 사용되며, 데이터의 분포를 크게 왜곡하지 않을 때 적합하다.
2. 중앙값 대체: 데이터의 중앙값으로 결측치를 대체하는 방법. 이상치의 영향을 줄이기 위해 사용되며, 데이터가 비대칭적일 때 유용하다.
3. 예측 모델 기반 대체: 머신러닝 모델(예: 회귀, KNN 등)을 사용해 결측값을 예측하고 대체하는 방법. 다른 변수와의 관계를 활용할 수 있어 정교한 대체가 가능하다.
이상치 탐지 기법:
1. IQR(Interquartile Range): 사분위수를 이용하여 이상치를 탐지하는 방법. Q1(1사분위수)와 Q3(3사분위수)의 범위를 기준으로 IQR = Q3 – Q1을 계산한 뒤, 일반적으로 Q1 – 1.5*IQR보다 작거나 Q3 + 1.5*IQR보다 큰 값을 이상치로 간주한다.
2. Z-score: 데이터의 표준 점수를 계산하여 이상치를 탐지하는 방법. 데이터가 평균으로부터 몇 표준편차 떨어져 있는지 나타내며, 일반적으로 Z-score가 3 이상(또는 -3 이하)인 데이터를 이상치로 간주한다.
3. 머신러닝 기반 이상치 탐지: Isolation Forest, One-Class SVM과 같은 알고리즘을 사용하여 이상치를 탐지하는 방법. 비선형적인 데이터나 복잡한 패턴에서도 이상치를 효과적으로 탐지할 수 있다.
pandas의 기능과 thresh 파라미터:
1. dropna(): 결측값이 포함된 행 또는 열을 삭제하는 함수. thresh 파라미터를 사용하면, 특정 행이나 열에서 결측값이 허용되는 최대 개수를 지정할 수 있다. 예를 들어, thresh=2는 최소 2개의 비결측값이 있어야 해당 행이나 열이 유지됨을 의미한다.
2. fillna(): 결측값을 특정 값으로 대체하거나, 평균값, 중앙값, 혹은 다른 방법을 사용해 채우는 함수. 다양한 방식으로 결측치를 처리할 수 있어 유연성이 높다.
위 내용은 시험에서 출제될 가능성이 높은 주제이므로, 개념과 함께 pandas 코드 사용법도 익히는 것이 중요하다.