본문 바로가기
통계

분산(Variance)

by comflex 2025. 4. 7.
728x90
반응형

variance

분산이 큰지 아닌지를 어떻게 확인하지?

데이터 분석이나 머신러닝을 하다 보면 자주 듣는 말 중 하나가 "이 데이터의 분산이 크다"는 표현입니다.
그런데 막상 실무나 공부를 하다 보면, "분산이 크다"는 게 정확히 어떤 의미인지 헷갈릴 수 있습니다.
이 글에서는 "분산이 크다는 게 뭘까?", "어떻게 확인하지?"에 대해 차근차근 알아보겠습니다.


분산이란?

분산(Variance)은 데이터가 평균을 기준으로 얼마나 퍼져 있는지를 수치로 표현한 값입니다.

수식적으로는:
$$
\text{분산} = \frac{1}{n} \sum_{i=1}^{n} (x_i - \bar{x})^2
$$

  • $x_i$ : 각 데이터 값
  • $\bar{x}$ : 평균

분산이 크다는 것은 → 데이터가 평균에서 많이 떨어져 흩어져 있다는 뜻입니다.


분산이 큰지 확인하는 5가지 방법

1. 직접 분산을 계산해본다

import numpy as np

data = [3, 4, 5, 6, 50]
print("분산:", np.var(data))  # 출력 예: 313.6

숫자가 크면 클수록 평균에서 데이터가 멀리 떨어져 있다는 의미입니다.
(단, 단위에 영향을 받기 때문에 스케일도 고려해야 함)


반응형
728x90

2. 표준편차를 사용한다

분산은 제곱된 값이기 때문에 해석이 어려울 수 있습니다.
그래서 분산의 제곱근인 표준편차(Standard Deviation)를 많이 사용합니다.

print("표준편차:", np.std(data))

표준편차도 값이 크면 → 데이터가 퍼져 있다는 신호입니다.


3. 시각화로 확인한다

  • 히스토그램
  • 박스플롯(Box Plot)
  • 산점도(Scatter Plot)

이런 시각화 방법으로 데이터의 흩어짐 정도를 직관적으로 확인할 수 있습니다.

import matplotlib.pyplot as plt

plt.hist(data, bins=10)
plt.title("Data Distribution")
plt.show()

4. 평균과 범위를 비교한다

평균과 최댓값-최솟값의 차이(range)가 크면 분산도 클 가능성이 높습니다.

예:

  • 평균: 5
  • 범위: 3 ~ 50 → 범위가 크므로 분산도 큼

5. 다른 집단과 비교한다

데이터가 2개 이상 있을 때는 상대 비교가 유용합니다.

a = np.array([4, 5, 6])
b = np.array([1, 20, 35])

print("A 집단 분산:", np.var(a))
print("B 집단 분산:", np.var(b))

이렇게 하면 어느 쪽이 더 퍼져 있는지 명확하게 알 수 있습니다.


마무리

"분산이 크다"는 건 단순히 숫자가 크다는 의미가 아닙니다.
그 데이터가 평균을 중심으로 얼마나 퍼져 있는지, 예측이 얼마나 어려운지와 직결되는 중요한 지표입니다.

데이터를 다룰 때는 다음을 항상 염두에 두세요:

  • 분산을 계산해보고
  • 시각화해서 눈으로 확인하고
  • 다른 집단과 비교해보며
  • 상황에 따라 해석을 다르게 하기
728x90
반응형