티스토리 뷰
변수 변환
한 줄 요약
"데이터를 분석하기 더 좋은 형태로 바꾸는 것"
❓왜 변환이 필요한가
문제 상황들:
1. 데이터가 한쪽으로 너무 치우쳐 있음 (왜도)
2. 변수마다 단위·크기가 너무 달라서 비교 불가
3. 변수 간 관계가 비선형이라 모델 성능이 낮음
4. 이상치가 너무 커서 분석을 방해함
변환 종류 전체 그림
변수 변환
├── 스케일 변환 (크기 조정)
│ ├── Min-Max 정규화
│ ├── Z-Score 정규화
│ └── 역수 변환
│
├── 분포 변환 (형태 교정)
│ ├── 로그 변환
│ ├── 제곱근 변환
│ ├── 제곱 변환
│ └── Box-Cox 변환
│
└── 범주형 변환
├── 원-핫 인코딩
└── 레이블 인코딩
1. 스케일 변환
1) Min-Max 정규화 ⭐️
"최솟값 0, 최댓값 1로 맞추기"
공식: (X - 최솟값) / (최댓값 - 최솟값)
데이터: 100, 200, 300, 400, 500
100 → (100-100)/(500-100) = 0.0
200 → (200-100)/(500-100) = 0.25
300 → (300-100)/(500-100) = 0.5
400 → (400-100)/(500-100) = 0.75
500 → (500-100)/(500-100) = 1.0
• ✅ 장점 : 결과가 항상 0~1로 범위 명확
• ❌ 단점 : 이상치에 매우 취약
(이상치 1개가 최댓값 되면 나머지가 다 0에 몰림)
2) Z-Score 정규화
"평균 0, 표준편차 1로 맞추기"
공식: (X - 평균) / 표준편차
결과: 주로 -3 ~ +3 사이 분포
이상치 상대적으로 덜 영향받음
3) 역수 변환
"값을 뒤집기 (1/X)"
X가 커지면 → 1/X는 작아짐
X가 작아지면 → 1/X는 커짐
→ 방향이 반대로 바뀜! ⭐ (시험 자주 나옴)
예) 속도(km/h) → 소요시간(h/km)으로 변환할 때
속도 60 → 1/60 (느린 속도 = 시간 많이 걸림)
속도 120 → 1/120 (빠른 속도 = 시간 적게 걸림)
2. 분포 변환
1) 로그 변환 ⭐⭐⭐
"오른쪽으로 긴 꼬리(양의 왜도)를 정규분포에 가깝게"
• 언제 쓰냐:
- 데이터가 양의 왜도일 때 (오른쪽 꼬리가 길 때)
- 이상치가 너무 클 때
- 데이터가 모두 양수일 때
예) 소득, 집값, 인구수, 주가
효과 시각화:
변환 전: 변환 후:
| |
|* | ***
|** | ****
|***** | *****
|********** | ****
0 1 2 100 0 1 2 3 4 (log값)
오른쪽 꼬리가 → 종 모양에 가까워짐
주의:
- 0이나 음수는 로그 변환 불가
log(0) = -∞, log(음수) = 불가
- 0이 있으면 log(X+1) 사용
2) 제곱근 변환
"로그보다 약한 버전의 왜도 교정"
공식: √X
• 언제 쓰냐:
- 로그 변환보다 효과가 약함
- 왜도가 심하지 않을 때 사용
- 마찬가지로 음수 불가
로그 vs 제곱근:
원래값: 1, 4, 9, 16, 100
로그: 0, 0.6, 1, 1.2, 2 (더 많이 압축)
제곱근: 1, 2, 3, 4, 10 (덜 압축)
3) 제곱 변환
"왼쪽 꼬리(음의 왜도)를 교정"
공식: X²
• 언제 쓰냐:
- 데이터가 음의 왜도일 때 (왼쪽 꼬리가 길 때)
- 로그 변환의 반대 방향
• 주의: 값이 커지므로 이상치 영향 더 커질 수 있음
4) Box-Cox 변환 ⭐
"λ(람다) 값에 따라 다양한 변환을 자동으로 선택"
λ(람다) 값에 따라 변환이 달라짐:
λ = 2 → 제곱 변환 (X²)
λ = 1 → 변환 없음 (X 그대로)
λ = 0.5 → 제곱근 변환 (√X)
λ = 0 → 로그 변환 (log X)
λ = -1 → 역수 변환 (1/X)
• 핵심: "람다를 자동으로 찾아서 정규분포에 가장 가깝게 만들어주는 변환"
• 조건: 데이터가 반드시 양수여야 함
3. 범주형 변환
1) 원-핫 인코딩 (One-Hot Encoding)
"범주를 0과 1의 열로 변환"
혈액형 변환:
원본 → A형열 B형열 O형열 AB형열
A형 → 1 0 0 0
B형 → 0 1 0 0
O형 → 0 0 1 0
AB형 → 0 0 0 1
• ✅ 장점 : 순서나 크기 의미 없음 (명목형에 적합)
• ❌ 단점: 범주 수가 많으면 열이 폭발적으로 늘어남
(100개 범주 → 100개 열 생성)
2) 레이블 인코딩 (Label Encoding)
"범주를 숫자로 대체"
학점 변환:
A+ → 4
A → 3
B+ → 2
B → 1
순서형 데이터에 적합
• 주의: 명목형에 쓰면 안 됨
• 혈액형: A→1, B→2, O→3, AB→4
👉 모델이 "AB형 > O형" 으로 잘못 해석할 수 있음
변환과 상관계수의 관계 ⭐
• 선형 변환 → 상관계수 유지
• 비선형 변환 → 상관계수 변함
| 변환 종류 | 선형? 비선형? | 상관계수 변환 |
| Min-Max 정규화 | ✅ 선형 | 유지 |
| Z-Score 정규화 | ✅ 선형 | 유지 |
| 로그 변환 | ❌ 비선형 | 변함 |
| 제곱 변환 | ❌ 비선형 | 변함 |
| 역수 변환 | ❌ 비선형 | 변함 (방향도 반대) |
| Box-Cox (λ=1) | ✅ 선형 | 유지 |
| Box-Cox (λ≠1) | ❌ 비선형 | 변함 |
⭐️ 시험 핵심 포인트
| 양의 왜도 교정 변환 | 로그 변환, 제곱근 변환 |
| 방향이 반대로 바뀌는 변환 | 역수 변환 (1/X) |
| 상관계수 유지되는 변환 | 선형 변환 (Min-Max, Z-Score) |
| Box-Cox λ=0 | 로그 변환과 동일 |
| Box-Cox λ=-1 | 역수 변환과 동일 |
| 로그 변환 불가 데이터 | 0 또는 음수 포함 데이터 |
| 명목형 변환 방법 | 원-핫 인코딩 |
| 순서형 변환 방법 | 레이블 인코딩 |
| 이상치에 가장 취약한 정규화 | Min-Max 정규화 |
'자기계발 🔍 > 자격증' 카테고리의 다른 글
| [빅분기 필기] 모수검정 vs 비모수검정 완벽 정리 (0) | 2026.04.06 |
|---|---|
| [빅분기 필기] 점추정 vs 구간추정 핵심 요약 (0) | 2026.04.06 |
| [빅분기 필기] 완전 분석 vs 다중대체법 핵심 요약 (1) | 2026.04.05 |
| [빅분기 필기] CRISP-DM : "업무이해, 데이터 이해, 데이터 준비, 모델링, 평가배포" 분석 프로세스 6단계 핵심 요약 (0) | 2026.04.05 |
| [빅분기 필기] 개인정보 처리 4가지: 가명화vs익명화 핵심 요약 (0) | 2026.04.05 |
- Total
- Today
- Yesterday
- 제미나이3
- 챗GPT
- 미래기술
- 빅데이터분석기사
- 일론머스크
- 알리바바AI
- Moltbook
- 데이터교차검증
- OpenAI
- OpenClaw
- 엔비디아
- 프롬프트엔지니어링
- 2026IT트렌드
- 빅데이터분석
- 데이터주권
- 몰트북
- SovereignAI
- 젠슨황
- 빅분기
- 빅분기필기
- s26울트라
- AI부작용
- AI코딩
- IT트렌드
- ChatGPT
- 개인정보보호
- nextjs
- AI에이전트
- vibecoding
- RSC
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |

