공분산은 두 변수가 각자의 평균보다 함께 높거나 함께 낮아지는 경향이 있는지를 측정합니다. 공분산이 양수이면 두 변수는 보통 평균을 기준으로 같은 방향으로 움직입니다. 공분산이 음수이면 한 변수는 평균보다 높을 때 다른 변수는 평균보다 낮은 경향이 있습니다.

대부분의 학생에게 핵심은 이것입니다. 실제 값 자체보다 부호가 더 유용한 경우가 많습니다. 공분산의 크기는 두 변수의 단위에 따라 달라지므로, 그 자체만으로는 깔끔한 강도 척도가 아닙니다.

표본과 모집단의 공분산 공식

짝지어진 표본 데이터에 대해 자주 쓰는 공식은 다음과 같습니다.

sxy=1n1i=1n(xixˉ)(yiyˉ)s_{xy} = \frac{1}{n-1}\sum_{i=1}^n (x_i-\bar{x})(y_i-\bar{y})

여기서 xˉ\bar{x}yˉ\bar{y}는 표본평균입니다. 각 곱 (xixˉ)(yiyˉ)(x_i-\bar{x})(y_i-\bar{y})는 두 값이 모두 평균의 같은 쪽에 있으면 양수이고, 서로 반대쪽에 있으면 음수입니다.

표본이 아니라 모집단 전체를 다루는 경우에는 분모가 보통 n1n-1 대신 NN입니다.

Cov(X,Y)=1Ni=1N(xiμx)(yiμy)\mathrm{Cov}(X,Y) = \frac{1}{N}\sum_{i=1}^N (x_i-\mu_x)(y_i-\mu_y)

표본 데이터에는 표본 공분산 공식을 사용하고, 데이터가 설명하려는 모집단 전체를 나타낼 때만 모집단 공분산 공식을 사용하세요.

공분산의 부호 읽는 법

공분산은 평균으로부터의 짝지어진 편차를 바탕으로 만들어집니다.

두 편차가 모두 양수이면 그 곱은 양수입니다. 두 편차가 모두 음수여도 그 곱은 역시 양수입니다. 이런 쌍들은 두 변수가 중심값을 기준으로 함께 움직이므로 공분산을 위로 끌어올립니다.

한 편차가 양수이고 다른 편차가 음수이면 그 곱은 음수입니다. 이런 쌍들은 두 변수가 반대 방향으로 움직이므로 공분산을 아래로 끌어내립니다.

즉, 공분산은 사실상 "평균 주변에서의 공동 움직임"의 평균입니다.

예제: 공부 시간과 퀴즈 점수

작은 표본에서 공부 시간과 퀴즈 점수를 기록했다고 가정해 봅시다.

(1,70), (2,80), (3,90)(1,70),\ (2,80),\ (3,90)

먼저 평균을 구합니다.

xˉ=1+2+33=2\bar{x} = \frac{1+2+3}{3} = 2 yˉ=70+80+903=80\bar{y} = \frac{70+80+90}{3} = 80

이제 편차와 그 곱을 계산합니다.

  • (1,70)(1,70)에 대해: (12)(7080)=(1)(10)=10(1-2)(70-80) = (-1)(-10) = 10
  • (2,80)(2,80)에 대해: (22)(8080)=0(2-2)(80-80) = 0
  • (3,90)(3,90)에 대해: (32)(9080)=(1)(10)=10(3-2)(90-80) = (1)(10) = 10

곱들을 더하면 다음과 같습니다.

10+0+10=2010 + 0 + 10 = 20

이것은 표본 공분산이므로 n1=2n-1 = 2로 나눕니다.

sxy=202=10s_{xy} = \frac{20}{2} = 10

공분산이 양수이므로 이 표본에서는 두 변수가 함께 움직입니다. 여기서는 공부 시간이 많을수록 퀴즈 점수도 높아집니다.

중요한 주의점은 1010이 보편적인 강도 척도가 아니라는 것입니다. 이 값의 크기는 여기서 시간과 점수라는 단위에 따라 달라집니다. 측정 척도를 바꾸면 전체적인 패턴이 비슷해도 공분산 값은 달라집니다.

공분산 vs 상관계수: 핵심 차이

공분산과 상관계수는 밀접하게 관련되어 있지만, 약간 다른 질문에 답합니다.

공분산은 함께 움직이는 방향을 알려 주고 원래의 척도를 유지합니다. 반면 상관계수는 표준편차가 0이 아닐 때 공분산을 표준편차로 나누어 그 관계를 표준화합니다.

r=sxysxsyr = \frac{s_{xy}}{s_x s_y}

그래서 상관계수는 단위가 없고, 서로 다른 데이터 집합끼리 비교하기가 더 쉽습니다. 상관계수의 값은 1-111 사이에 머물지만, 공분산에는 고정된 범위가 없습니다.

실제로는 다음과 같이 생각하면 됩니다.

  • 원래 단위에서의 공동 변동이 중요하거나 공분산 행렬처럼 더 큰 계산 안에서 공분산이 등장할 때는 공분산을 사용합니다.
  • 데이터 집합끼리 비교하기 쉬운 무단위 요약값이 필요할 때는 상관계수를 사용합니다.

공분산에서 자주 하는 실수

공분산이 크면 자동으로 강한 관계라고 생각하기

공분산이 100100이라고 해서 공분산이 55일 때보다 자동으로 "더 강한" 것은 아닙니다. 단지 변수들이 더 큰 척도로 측정되었을 수 있습니다.

표본 공식과 모집단 공식을 혼동하기

데이터가 표본이라면 n1n-1로 나누는 것이 표준입니다. 데이터가 관심 있는 모집단 전체라면 NN으로 나누는 모집단 공식을 사용합니다.

공분산이 0이면 관계가 전혀 없다고 생각하기

공분산이 00에 가깝다는 것은 평균 주변에서의 선형적인 공동 움직임이 거의 없다는 뜻입니다. 그렇다고 비선형 관계까지 없다는 뜻은 아닙니다.

두 변수가 서로 독립이고 공분산이 존재하면 공분산은 00입니다. 하지만 그 역은 항상 성립하지는 않습니다.

공분산을 인과관계로 해석하기

공분산은 변수들이 함께 어떻게 변하는지만 설명합니다. 왜 함께 변하는지는 설명하지 않습니다.

공분산은 언제 사용되나요?

공분산은 통계학, 금융, 머신러닝, 데이터 분석에서 짝지어진 변수들을 함께 살펴봐야 할 때 등장합니다.

특히 공분산 행렬에서 자주 쓰이는데, 여기서 각 원소는 두 변수가 함께 어떻게 변하는지를 요약합니다. 이는 포트폴리오 위험, 주성분 분석, 다변수 모델링 같은 분야에서 중요합니다.

비슷한 문제를 직접 풀어 보세요

아무 짝지어진 값 세 개나 네 개를 잡고, 두 평균을 구한 다음, 짝지어진 편차를 곱해서 평균을 내 보세요. 이 한 가지 절차만 해 봐도 공분산의 부호가 훨씬 더 구체적으로 느껴집니다.

다음 단계로 가고 싶다면 같은 데이터를 상관계수와 비교해 보고, 척도를 표준화하면 해석이 어떻게 달라지는지 살펴보세요.

문제 풀이가 필요하신가요?

문제를 올리면 검증된 단계별 풀이를 몇 초 만에 받을 수 있습니다.

GPAI Solver 열기 →