3-1. 이상치

2019. 2. 14. 21:34

이상치(Outlier)에 대해

  • 이상치 처리는 데이터 분석 중 가장 많은 시간이 소요된다.
  • EDA & data cleaning, data preprocessing, data manupulation, data massage, data munging, data wrangling

이상치

  1. 정의 : 데이터 전체적인 패턴에서 동떨어져있는 관측 값

    • 영향점이라고도 불림.
    • 독립변수(x축)에 있는 이상치(영향점) : 지대점
    • 종속변수(y축)에 있는 이상치(영향점) : 아웃라이어
    • boxplot에서 가운데 box의 높이 : 3Q - 1Q = IQR, 가운데 50%를 의미
    • boxplot에서 box양쪽 막대 : 3Q + 1.5*IQR = Upper fence, 1Q-1.5*IQR = Lower fence
    • boxplot에서 Upper, Lower fence 보다 바깥에 있는 값 : 아웃라이어
  2. 단변수(boxplot)에서 안보이던 이상치(Outlier)가 이변수(산점도)에서 보일 수 있다.

    • 반드시 그림으로 그려봐야한다.
    • EDA를 통해 새로운 이상치를 발견할 수 있다.
  1. 종류 :
    1) 실수에 의한 아웃라이어 : 수집시 오류 + 측정단위 오류 + 실험시 에러
    2) 자연(real연구대상)적 발생 아웃라이어 : 직원들월급 중 임원들은 따로 빼서 분석해야함. 자연적으로는 너무 차이날 수 밖에 없음.
    3) 역코딩에 의한 아웃라이어 : 설문지에 의도적으로 1번과 5번 성향을 바꿔놨는데, 데이터 분석시 고려안함
    4) 의도적 아웃라이어 : 설문조사시 10대들은 알콜섭취량 일부러 낮게 적음
    5) sampling 아웃라이어 : 표본 중에 우연히 이상치요소들이 포함 ex> 사람들 키 조사하는데 농구선수도 포함됨
  1. 이상치(아웃라이어)의 영향력

    • 평균뿐만 아니라 분산(표준편차)가 엄청 커져 -> 엄청 불안정한 자료가 된다.
    • 중앙값(median)은 그나마 영향을 덜 받는다.

이상치 발견의 방법

  1. 시각화 : 단변수 boxplot -> 이변수 scatter plot
  2. Z(표준정규)분포상 3sd이상 떨어진 값들 : 3sd는 왼쪽 2.5%이하, 오른쪽 97.5%이상
    • 1sd사이 : 68.27%
    • 2sd사이 : 95.45%
    • 3sd사이 : 99.73%
  3. 도메인 knowledge를 특정기준으로 두고 파악 : ex 수축기 혈압 120 ~ 160 벗어나는 값들

이상치 제거 방법

  1. 삭제 : 입력시 error거나 outlier수가 굉장히 적을 경우는 그냥 삭제
  2. 대치(Imputation) : 다른 값으로 변경
    • 범주별 mean/median/mode 등으로 대치
    • 통계적모델링(종속변수로 취급하여, 다른변수들로 예측 후 대치)
    • Binning(숫자의 분포를 범주로 매핑)
  3. 스케일링(scaling) : 보통 right skewed(캐글에서 0.75이상)인 경우 logsquare root(제곱근)을 취한다
  4. 정규화(normalization) : MinMax, Z-score 등으로 정규화시킨다.

+ Recent posts