명목형 변수
명목형 변수
개요
명목형 변수(Nominal Variable)는 통계학 및 데이터 과학에서 범주형 데이터의 한류로, 특정주나 집단을 나타내는 값들을 가지며, 이 값들 사이에는 순서나 크기의 의미가 없는 변수를 말합니다. 즉, 명목형 변수는 단지 이름(nominal) 또는 라벨을 제공할 뿐, 수치적 순서나 거리 개념이 존재하지 않습니다. 예를 들어, 성별, 혈액형, 국적, 직업, 거주 지역 등은 명목형 변수의 대표적인 예입니다.
데이터 분석 과정에서 명목형 변수는 중요한 역할을 하며, 특히 머신러닝 모델에 입력하기 전에 적절한 전처리가 필요합니다. 이 문서에서는 명목형 변수의 정의, 특성, 활용 예, 전처리 방법, 그리고 분석 시 고려사항을 다룹니다.
특성과 정의
1. 순서가 없는 범주
명목형 변수의 가장 핵심적인 특징은 순서가 없다는 점입니다. 예를 들어, ‘서울’, ‘부산’, ‘대구’라는 거주 지역은 각각 다른 범주를 나타내지만, ‘서울 < 부산’과 같은 순서 관계는 의미가 없습니다. 이는 순서형 변수(Ordinal Variable)와의 주요 차이점입니다.
2. 수치적 의미 없음
명목형 변수의 값은 단지 식별자일 뿐, 수치적 계산이 불가능합니다. 예를 들어, ‘남성=1’, ‘여성=2’라고 코딩하더라도, ‘여성은 남성보다 1 크다’는 해석은 통계적으로 잘못된 것입니다.
3. 이산형 데이터
명목형 변수는 일반적으로 이산형(discrete) 데이터이며, 연속적인 값이 아니라 유한한 수의 범주를 가집니다. 다만 범주의 수가 매우 많을 수도 있습니다(예: 우편번호).
활용 예시
다음은 명목형 변수의 실제 예시들입니다:
변수 이름 | 가능한 값들 |
---|---|
성별 | 남성, 여성, 기타 |
혈액형 | A형, B형, AB형, O형 |
국적 | 한국, 미국, 일본, 프랑스 등 |
직업 | 교사, 의사, 소프트웨어 개발자, 예술가 등 |
결제 수단 | 카드, 현금, 모바일 결제, 계좌이체 |
이러한 변수는 고객 프로파일링, 시장 세분화, 설문 조사, 생물학적 연구 등 다양한 분야에서 자주 사용됩니다.
데이터 분석에서의 처리 방법
1. 원-핫 인코딩 (One-Hot Encoding)
머신러닝 모델은 일반적으로 수치 데이터만을 입력으로 받기 때문에, 명목형 변수는 반드시 수치화(encoding)되어야 합니다. 가장 일반적인 방법은 원-핫 인코딩입니다.
예를 들어, ‘혈액형’ 변수가 A, B, AB, O 네 가지 범주를 가진다면, 이를 다음과 같이 변환합니다:
A형 | B형 | AB형 | O형 |
---|---|---|---|
1 | 0 | 0 | 0 |
0 | 1 | 0 | 0 |
0 | 0 | 1 | 0 |
0 | 0 | 0 | 1 |
이 방식은 범주 간에 가짜의 순서 관계를 만들지 않으며, 대부분의 알고리즘에서 안정적으로 작동합니다. 단점은 범주 수가 많을 경우 차원 증가(curse of dimensionality) 문제가 발생할 수 있다는 점입니다.
2. 레이블 인코딩 (Label Encoding)
레이블 인코딩은 각 범주에 정수 값을 부여하는 방식입니다. 예를 들어, ‘서울=0’, ‘부산=1’, ‘대구=2’처럼 매핑합니다.
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
encoded = le.fit_transform(['서울', '부산', '대구']) # [0, 1, 2]
하지만 이 방법은 순서가 없는 변수에 순서를 부여하는 효과를 낼 수 있어, 회귀나 트리 기반 모델에서 잘못된 해석을 유도할 수 있습니다. 따라서 명목형 변수에는 일반적으로 원-핫 인코딩이 더 적합합니다.
분석 시 고려사항
1. 범주 수의 적절성
- 범주가 너무 많으면(예: 제품 ID), 데이터가 희소해지고 모델 학습이 어려워질 수 있습니다.
- 이 경우, 범주를 그룹화하거나 임베딩(embedding) 기법을 사용하는 것이 효과적입니다.
2. 희소 범주 처리
- 어떤 범주는 데이터에 매우 적게 나타날 수 있습니다(예: 드문 국적).
- 이러한 희소 범주는 모델의 과적합(overfitting)을 유발할 수 있으므로, ‘기타’ 범주로 통합하거나 제거하는 전략이 필요합니다.
3. 결측치 처리
- 명목형 변수의 결측치는 ‘알 수 없음’ 또는 ‘미응답’과 같은 별도의 범주로 처리하거나, 최빈값(mode)으로 대체하는 방법이 사용됩니다.
관련 개념과 비교
변수 유형 | 순서 존재 여부 | 수치적 의미 | 예시 |
---|---|---|---|
명목형 (Nominal) | ❌ 없음 | ❌ 없음 | 성별, 혈액형 |
순서형 (Ordinal) | ✅ 있음 | ⚠️ 부분적 | 학력(고졸, 대졸, 석사), 만족도(낮음, 보통, 높음) |
간격형 (Interval) | ✅ 있음 | ✅ 있음 (간격) | 온도(섭씨), 연도 |
비율형 (Ratio) | ✅ 있음 | ✅ 있음 (비율) | 키, 몸무게, 소득 |
참고 자료 및 관련 문서
- Agresti, A. (2018). An Introduction to Categorical Data Analysis. Wiley.
- James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An Introduction to Statistical Learning. Springer.
- Scikit-learn 공식 문서 - Preprocessing
관련 문서:
- 범주형 변수
- 데이터 전처리
- 원-핫 인코딩
명목형 변수는 데이터 분석의 기초이자 핵심 요소로, 이를 올바르게 이해하고 처리하는 것은 정확한 통계 해석과 모델 성능 향상에 결정적인 영향을 미칩니다.
이 문서는 AI 모델(qwen-3-235b-a22b-instruct-2507)에 의해 생성된 콘텐츠입니다.
주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.