728x90
반응형
ChatGPT를 이용하여 코딩 공부를 해보려 한다.
100일 동안 공부하고 기록할 것이다.
많이 읽어주시고 항상 감사하다. (훈수는 항상 환영한다.)
Day 51: 데이터 이상치 탐지
- 이상치(outlier) 정의와 탐지 방법.
- 실습: 코인 가격 데이터에서 이상치 제거.
1. 이상치(Outlier)란?
이상치는 다음과 같은 원인으로 발생할 수 있음.
✔ 센서 오류 (잘못된 측정)
✔ 데이터 입력 오류
✔ 극단적인 시장 변동 (예: 급등락)
2. 이상치 탐지 방법
1. IQR (Interquartile Range, 사분위 범위) 방법

가상의 금액들을 설정하였다.
IQR을 이용해 이상치를 제거하는 방법
1.5 * IQR을 벗어나는 데이터는 이상치로 간주
2. Z-score (표준 점수) 방법

평균과 표준편차를 이용해 이상치를 감지하는 방법
Z-score가 ±3 이상인 값을 이상치로 제거
3. 시각화를 통한 이상치 탐지


3. 실습 과제
✔ IQR 또는 Z-score를 이용해 비트코인 가격 데이터에서 이상치 제거
✔ 제거 전후 데이터를 비교하여 효과 확인
✔ 박스플롯으로 시각화
1. 데이터 생성
- 가상의 비트코인 가격 데이터를 생성
- 극단적인 이상치 값(예: 90000, 100000 등)을 포함

2. IQR을 이용한 이상치 제거
- 1사분위수(Q1)와 3사분위수(Q3) 계산
- IQR 범위를 벗어나는 데이터를 이상치로 간주

3. Z-score를 이용한 이상치 제거
- 표준 점수(Z-score)를 계산하여 |Z-score| > 3 인 값 제거

4. 시각화 (박스플롯)
- 이상치 제거 전후 데이터를 **박스플롯(Box Plot)**으로 비교


결과 분석
1. 원본 데이터
- 90,000과 100,000 같은 극단적인 값이 박스플롯에서 이상치(점으로 표시됨)
2. IQR 방법 적용 후
- 이상치가 제거되어 박스플롯의 분포가 안정적
3. Z-score 방법 적용 후
- 비슷하게 이상치가 제거됨
오늘은 이만
읽어주셔서 감사하다.
반응형
'코딩 100일 도전' 카테고리의 다른 글
| 취미로 코딩 공부하기 53일차 (0) | 2025.03.04 |
|---|---|
| 취미로 코딩 공부하기 52일차 (0) | 2025.03.03 |
| 취미로 코딩 공부하기 50일차 (0) | 2025.03.01 |
| 취미로 코딩 공부하기 49일차 (0) | 2025.02.28 |
| 취미로 코딩 공부하기 48일차 (0) | 2025.02.27 |