Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Studying data

[이상치 탐색] 1. 통계값을 이용한 Outlier Detection 본문

Data Science

[이상치 탐색] 1. 통계값을 이용한 Outlier Detection

halloweenie 2023. 5. 3. 21:20

통계(기초통계량)값을 이용한 이상치 탐색

Skewed Distribution에서의 이상치 탐색 

• 1.5 IQR 기준

±1.5*IQR 값을 기준으로 판별. \((Q1 - 1.5*IQR) < X < (Q3 + 1.5*IQR)\) 범위 밖에 있는 값들을 이상치로 판별

 

3 IQR 기준

±3*IQR 값을 기준으로 판별. \((Q1 - 3*IQR) < X < (Q3 + 3*IQR)\) 범위 밖에 있는 값들을 이상치로 판별

 

Normal Distribution(정규분포)에서의 이상치 탐색

 정규 분포에서 97.5% 이상, 2.5% 이하에 포함되는 값을 이상치로 판별 

 

 ESD(Extreme Studentized Deviation) or Z-score 

데이터가 정규분포를 이루는 경우 표준편차(\(\sigma\))를 이용해 이상치를 탐색할 수 있다. ESD, 또는 Z-score 방법에서는 평균±3\(\sigma\) 범위를 벗어나는 값들을 이상치로 판별한다. 즉, 데이터의 중앙 99.7%에 해당하지 않는 값들이 이상치이다.

 

위부터 순서대로 1\(\sigma\), 2\(\sigma\), 3\(\sigma\)를 사용했을 때로, 파란색 범위를 벗어나는 데이터는 이상치로 간주된다.

 

  • 데이터의 68%는 ±1\(\sigma\) 사이에 있다.
  • 데이터의 95%는 ±2\(\sigma\) 사이에 있다.
  • 데이터의 99.7%는 ±3\(\sigma\) 사이에 있다.

 

Z-score Standard-score라고도 하는데 데이터의 평균표준편차를 사용하여 중심 경향 및 분산을 측정하는 방식이다. 즉, Z-score는 데이터가 평균으로부터 얼마의 표준편차만큼 벗어나 있는지를 의미한다. Z-score를 통해 데이터 값이 평균보다 큰지 작은지를 확인할 수 있고, 평균 포인트에서 얼마나 떨어져 있는지를 이해할 수 있다. 

평균±3\(\sigma\) 범위를 벗어나는 값들을 이상치로 보는 것은 Z-score의 절대값(\(\left\vert z \right\vert\))이 3 초과인 데이터를 이상치로 보는 것과 같은 의미이다. 

이 방법은 평균과 표준편차 자체가 이상치에 크게 영향을 받고, 작은 데이터셋의 경우 이상치를 탐색해내기 어렵다는 한계가 있다. 따라서 대안으로 IQR 방법을 사용할 수 있다.

For Other Distributions

백분위수(percentile)에 기반한 방법 사용

 99백분위수*2 값보다 큰 값들을 이상치로 판별

• 99백분위수 값보다 크거나, 1백분위수 값보다 작은 경우 이상치로 판별

 

 

이외에도 방법이 매우 다양하므로 데이터에 따라 결정한다. 데이터가 정규분포일 때 쓰이는 방법의 경우, skewed 데이터를 정규분포에 가깝게 만드는 적절한 변환(Transformation)을 한 후 이상치를 탐색해야 한다. Skewed data를 변환하는 방법에 대해서는 아래를 참고.

 

(skewed data 처리 포스트 링크 추가하기)

 

 

 

Reference

1. [데이터 전처리] 결측치, 이상치, 잡음 처리, 데이터 변환

2. 데이터 전처리 이상치 탐색 및 처리하기 변수변환 방법

3. Outlier(이상치/이상값/특이값/특이치 등) 탐지 방법(detection method) : 1. IQR 방식 with 파이썬

4. Outlier(이상치/이상값/특이값/특이치 등) 탐지 방법(detection method) : 2. Z-score 방식 with 파이썬

5. [Python] 이상치(Outlier) 탐색을 위한 IQR(Interquartile Range)

6. [Python Data Analysis] 10. DataFrame 이상치/결측치 데이터 전처리

7. 파이썬으로 데이터 전처리 하기 / 결측치, 중복 데이터, 이상치, 정규화, 원-핫 인코딩, 구간화

8. 이상치(Outlier) 판단 기준

9. 데이터 이상치(Outlier)의 기준은 무엇일까?

10. Outlier Detection & Removal | How to Detect & Remove Outliers (Updates 2023) 

11. It's all about Outliers

 

 

 

12. Outlier

13. [Kaggle] Outlier Detection Techniques: Simplified

14. Outlier detection methods!

 

 

Comments