[ML] 데이터 결측치 처리 방법

지유경·2023년 8월 15일
2

Machine Learning

목록 보기
1/1

정형 데이터를 다루다 보면 null 값을 가진 컬럼들이 존재하는 경우가 많다.

(공공하수처리 데이터 중 과거수질자료_낙동강.csv의 예시)
분석에 사용할 변수(유해남조류 세포수 / Microcystis / Anbaena / Oscillatoria / Aphanizomenon / 수온 / 지오스민 / 2MIB / PH / Microcystin-LR) 중에서 지오스민, 2MIB, Microcystin-LR 컬럼이 많은 결측치를 가지기 때문에 처리를 할 필요가 있다.
대부분의 경우, 결측치를 제거하고 분석을 진행했는데 낙동강 데이터셋에서 데이터의 개수가 충분하지 않기 때문에 다른 방법을 찾아보게 됐다.

결측치를 처리하는 방법에는 7가지가 있다.

Data Imputation

1. 평균값으로 대체(Mean Imputation)

-> 결측치가 존재하는 변수에서 결측치를 제외한 나머지 값들의 평균으로 결측치를 대체하는 방법
장점: 해당 값으로 대체 시 변수의 평균값이 변하지 않는다.

2. 새로운 값으로 대체(Substitution)

-> 해당 데이터 대신 샘플링 되지 않은 다른 데이터에서 값을 가져오는 방법

3. Hot deck imputation

-> 다른 변수에서 비슷한 값을 가지는 데이터 중 하나를 랜덤 샘플링하여 값을 복사해오는 방법
이는 결측값이 존재하는 변수가 가질 수 있는 값의 범위가 한정되어 있을 때 이점을 가짐. 또한, 랜덤하게 가져온 값이기 때문에 어느 정도 변동성을 더해준다는 점에서 표준 오차의 정확도에 어느 정도 기여를 함.

4. Cold deck imputation

-> Hot deck imputation처럼 다른 변수에서 비슷한 값을 가지는 데이터 중에서 하나를 골라서 결측값을 대체하는 방법. 다른 점은 랜덤 샘플링을 하는 것이 아니라 어떠한 규칙하에 하나를 선정하는 것 이다.

5. Regression imputation

-> 결측치가 존재하지 않는 변수를 feature로 삼고, 결측치를 채우고자 하는 변수를 target으로 삼아 regression task를 진행하는 방법
데이터 내의 다른 변수를 기반으로 결측치를 예측하는 것이기 때문에 변수 간 관계를 그대로 보존할 수 있다는 장점을 갖지만, 예측치 간의 variability는 보존할 수 없다는 단점을 가짐.

6. Stochastic regression imputation

-> regression 방법에 random residual value를 더해서 결측치의 최종 예측값으로 대체하는 방법
Regression imputation의 장점을 모두 가지며, random component를 가진다는 장점 또한 있음.

7. Interpolation and extrapolation(보간법, 보외법)

-> 같은 대상으로부터 얻은 다른 관측치로부터 결측치를 추정하는 방법

[Reference] https://daebaq27.tistory.com/43
profile
M. Sc in Computer Science and Engineering, Mar 2024 to present / B. Sc in Computer Engineering, Mar 2020 to Feb 2024

0개의 댓글