2025-09-19 20:49

  • 상관계수는 두 변수 사이의 선형적 관계의 강도와 방향을 측정하는 통계적 지표다.

  • 값의 범위는 -1에서 +1까지이며, 양수는 양의 관계, 음수는 음의 관계, 0은 선형 관계 없음을 나타낸다.

  • 상관관계가 인과관계를 의미하지 않으므로, 숨겨진 변수나 우연의 일치 가능성을 항상 염두에 두어야 한다.

데이터 과학의 핵심 상관계수 모든 것을 알려드립니다

데이터의 바다를 항해하는 모든 분석가에게 ‘상관계수’는 없어서는 안 될 필수 나침반이다. 두 변수 사이에 어떤 관계가 숨어있는지, 그 관계가 얼마나 강력한지를 알려주는 핵심 지표이기 때문이다. 아이스크림 판매량과 기온 사이에는 어떤 관계가 있을까? 광고비 지출이 정말 매출 상승으로 이어질까? 이러한 질문에 대한 실마리를 제공하는 것이 바로 상관계수다.

이 핸드북은 상관계수가 왜 만들어졌는지부터 시작해 그 종류와 구조, 해석 방법, 그리고 실제 활용 사례와 주의점까지, 상관계수에 대한 모든 것을 체계적으로 다룬다.

1. 상관계수의 탄생 배경: 관계를 측정하려는 열망

상관계수라는 개념이 없던 시절을 상상해 보자. 우리는 두 현상이 ‘어느 정도 관련 있다’ 또는 ‘관련 없어 보인다’ 정도의 막연한 추측만 할 수 있었다. 이러한 모호함을 없애고 관계를 수학적으로 측정하고 싶었던 한 천재가 있었다. 바로 찰스 다윈의 사촌이기도 한 영국의 통계학자 **프랜시스 골턴(Francis Galton)**이다.

골턴은 19세기 후반, 부모와 자식 간의 유전적 특성, 특히 키의 관계를 연구했다. 그는 ‘키가 큰 아버지에게서 키가 큰 아들이 태어나는 경향’을 발견했지만, 그 관계를 명확한 숫자로 표현할 방법을 찾고 있었다. 그는 이 ‘함께 변하는 경향’을 설명하기 위해 ‘공동-관계(Co-relation)‘라는 용어를 처음 사용했고, 이것이 상관관계(Correlation)의 어원이 되었다.

이후 그의 제자인 **칼 피어슨(Karl Pearson)**이 스승의 아이디어를 수학적으로 다듬어 오늘날 우리가 가장 널리 사용하는 ‘피어슨 상관계수’를 공식화했다. 즉, 상관계수는 두 변수가 함께 움직이는 정도를 객관적인 숫자로 표현하려는 인간의 지적 열망에서 탄생한 위대한 발명품인 것이다.

2. 상관계수의 구조: 무엇으로 이루어져 있는가?

상관계수는 보통 r이라는 기호로 표기하며, 그 값은 항상 -1과 +1 사이에 존재한다. 이 단순한 숫자 하나에 관계의 ‘방향’과 ‘강도’라는 두 가지 핵심 정보가 모두 담겨있다.

2.1. 관계의 방향 (Direction)

  • 양의 상관관계 (Positive Correlation, 0 < r ≤ 1): 두 변수가 같은 방향으로 움직이는 관계. 한 변수가 증가하면 다른 변수도 증가하고, 한 변수가 감소하면 다른 변수도 감소하는 경향을 보인다.

    • 예시: 공부 시간과 시험 성적, 소득과 소비, 기온과 아이스크림 판매량.
  • 음의 상관관계 (Negative Correlation, -1 ≤ r < 0): 두 변수가 반대 방향으로 움직이는 관계. 한 변수가 증가하면 다른 변수는 감소하는 경향을 보인다.

    • 예시: 운동량과 체지방률, 상품 가격과 판매량, 산의 높이와 기온.
  • 상관관계 없음 (Zero Correlation, r = 0): 두 변수 사이에 어떠한 선형적 관계도 없음을 의미한다. 한 변수의 움직임으로 다른 변수의 움직임을 예측할 수 없다.

2.2. 관계의 강도 (Strength)

상관계수의 절댓값, 즉 부호를 제외한 숫자 크기는 관계의 강도를 나타낸다. 이 값이 1(또는 -1)에 가까울수록 두 변수는 매우 강한 선형 관계를 가지며, 0에 가까울수록 관계는 약해진다.

일반적으로 통용되는 해석 기준은 다음과 같지만, 분야나 데이터의 성격에 따라 기준은 달라질 수 있다.

상관계수(r)의 절댓값관계의 강도
0.9 ~ 1.0매우 강한 관계
0.7 ~ 0.9강한 관계
0.4 ~ 0.7보통의 관계
0.2 ~ 0.4약한 관계
0.0 ~ 0.2매우 약하거나 관계없음

예를 들어, r = 0.8은 강한 양의 선형 관계를, r = -0.2는 약한 음의 선형 관계를 의미한다. r = 1은 모든 데이터가 완벽하게 하나의 직선 위에 놓여 있는 상태를 뜻한다.

scatter plots showing strong positive, weak positive, and no correlation 이미지

라이선스 제공자: Google

3. 상관계수의 종류: 상황에 맞는 도구 사용법

상관관계를 측정하는 방법이 한 가지만 있는 것은 아니다. 데이터의 특성과 우리가 확인하고 싶은 관계의 종류에 따라 적절한 상관계수를 선택해야 한다.

3.1. 피어슨 상관계수 (Pearson Correlation Coefficient)

가장 널리 알려지고 사용되는 상관계수. 두 변수 간의 선형(linear) 관계를 측정한다. 즉, 데이터가 직선에 가까운 형태로 분포할 때 그 관계의 강도를 가장 잘 나타낸다.

  • 언제 사용하는가?: 분석하려는 두 변수가 모두 연속형 변수(키, 몸무게, 온도 등)이고, 정규분포를 따르며, 관계가 선형적이라고 가정할 수 있을 때 사용한다.

  • 핵심 원리: 공분산(Covariance)을 각 변수의 표준편차의 곱으로 나누어 계산한다. 공분산은 두 변수가 함께 변하는 정도를 나타내지만 단위에 따라 값이 크게 달라지는데, 이를 표준편차로 나누어 -1과 +1 사이의 값으로 표준화한 것이 피어슨 상관계수다.

3.2. 스피어만 순위 상관계수 (Spearman Rank Correlation Coefficient)

피어슨 상관계수가 ‘선형’ 관계에 초점을 맞춘다면, 스피어만 상관계수는 두 변수 간의 단조(monotonic) 관계를 측정한다. 단조 관계란 한 변수가 증가할 때 다른 변수도 ‘꾸준히’ 증가하거나 ‘꾸준히’ 감소하는 관계를 의미하며, 반드시 직선일 필요는 없다.

  • 언제 사용하는가?: 데이터가 피어슨의 정규성 가정을 만족하지 않거나, 변수가 순서형 데이터(만족도 점수, 등급 등)일 때, 또는 관계가 선형은 아니지만 단조 관계일 것으로 의심될 때 사용한다.

  • 핵심 원리: 실제 데이터 값 대신, 각 데이터의 **순위(rank)**를 매겨 그 순위들 간의 피어슨 상관계수를 계산하는 방식이다. 이 덕분에 이상치(outlier)에 덜 민감하고 비선형 관계도 잡아낼 수 있다.

3.3. 켄달의 타우 상관계수 (Kendall’s Tau)

스피어만처럼 순위를 기반으로 하지만, 관계를 측정하는 방식이 조금 다르다. 모든 데이터 쌍을 비교하여 ‘일치하는 쌍(concordant pair)‘과 ‘불일치하는 쌍(discordant pair)‘의 비율을 통해 상관관계를 계산한다.

  • 언제 사용하는가?: 스피어만과 유사한 상황에서 사용하며, 특히 표본 크기가 작거나 데이터 내에 동일한 순위가 많을 때 더 안정적인 결과를 보이는 경향이 있다.

  • 핵심 원리: (일치하는 쌍의 수 - 불일치하는 쌍의 수)를 전체 쌍의 수로 나누어 계산한다. 개념적으로 더 직관적인 면이 있다.

4. 상관계수 활용법: 분석 도구와 실제 사례

4.1. 계산 방법

현대에는 복잡한 수식을 직접 계산할 필요가 없다. 엑셀, 파이썬, R 등 대부분의 데이터 분석 도구에서 간단한 함수나 명령어로 상관계수를 쉽게 계산할 수 있다.

  • 엑셀 (Excel): =CORREL(array1, array2) 함수 사용

  • 파이썬 (Python): pandas 라이브러리의 .corr() 메소드나 scipy 라이브러리의 stats.pearsonr() 함수 사용

    import pandas as pd
    
    # 예시 데이터프레임 생성
    data = {'study_hours': [2, 3, 5, 6, 8],
            'exam_score': [65, 70, 80, 82, 90]}
    df = pd.DataFrame(data)
    
    # 피어슨 상관계수 계산
    correlation = df['study_hours'].corr(df['exam_score'])
    print(correlation) 
    # 결과: 0.984
    
  • R: cor() 함수 사용

4.2. 실제 활용 사례

상관계수는 거의 모든 분야에서 변수 간의 관계를 파악하고 가설을 검증하는 데 사용된다.

  • 금융: 특정 주식과 시장 지수(예: 코스피) 간의 상관관계를 분석하여 리스크를 관리한다. 상관관계가 낮은 자산들로 포트폴리오를 구성하면 분산 투자를 통해 안정성을 높일 수 있다.

  • 마케팅: 광고비, SNS 노출 수, 프로모션 횟수 등과 실제 매출액 간의 상관관계를 분석하여 가장 효과적인 마케팅 채널을 찾는다.

  • 의료/바이오: 특정 약물 투여량과 환자의 혈압 변화 사이의 상관관계를 분석하여 약물의 효과를 검증한다. 흡연량과 폐암 발병률의 강한 양의 상관관계는 이미 널리 알려진 사실이다.

  • 제조: 생산 라인의 온도, 습도, 압력 등의 변수와 불량품 발생률 간의 상관관계를 분석하여 수율을 개선하고 품질을 관리한다.

5. 심화: 상관계수 해석의 함정과 주의점

상관계수는 강력한 도구지만, 잘못 해석하면 완전히 틀린 결론에 도달할 수 있다. 다음 사항들을 반드시 명심해야 한다.

5.1. “상관관계는 인과관계가 아니다 (Correlation is not Causation)”

가장 중요하고 유명한 함정이다. 두 변수 사이에 높은 상관관계가 존재한다고 해서, 하나가 다른 하나의 원인이라고 단정할 수 없다.

  • 유명한 예시: 여름철 아이스크림 판매량과 익사 사고 발생 건수는 매우 높은 양의 상관관계를 보인다. 하지만 ‘아이스크림을 먹으면 익사한다’는 결론은 말도 안 된다. 실제 원인은 ‘더운 날씨’라는 **숨겨진 변수(Lurking Variable)**다. 더운 날씨 때문에 사람들이 아이스크림을 많이 사 먹고, 동시에 물놀이를 많이 가서 익사 사고도 늘어나는 것이다.

  • 항상 제3의 변수가 존재할 가능성, 또는 단순히 우연의 일치일 가능성을 염두에 두어야 한다.

5.2. 결정계수 (R-squared, R²)

상관계수(r)를 제곱한 값으로, 한 변수가 다른 변수를 얼마나 설명하는가를 나타내는 지표다.

  • 예시: 공부 시간과 시험 성적의 상관계수(r)가 0.9라고 가정하자. 이때 결정계수(R²)는 0.9 * 0.9 = 0.81이다. 이는 ‘시험 성적의 변화(분산) 중 81%가 공부 시간의 변화로 설명된다’는 의미다. 나머지 19%는 학생의 컨디션, 시험 난이도, 지능 등 다른 요인에 의해 결정된다.

  • 결정계수는 상관관계의 실제적인 영향력을 파악하는 데 유용한 보조 지표가 된다.

5.3. 그 외 주의점

  • 이상치(Outliers)의 영향: 데이터에 극단적인 값, 즉 이상치가 하나만 있어도 상관계수는 크게 왜곡될 수 있다. 분석 전 항상 데이터를 시각화하여 이상치를 확인하는 습관이 중요하다.

  • 비선형 관계의 함정: 피어슨 상관계수는 선형 관계만 측정한다. 아래 그림처럼 완벽한 U자형 곡선 관계를 가진 데이터의 피어슨 상관계수는 0에 가깝게 나온다. 상관계수가 0이라고 해서 ‘아무 관계가 없다’고 단정해서는 안 되는 이유다.

  • 표본의 크기: 표본의 크기가 너무 작으면 우연에 의해 높은 상관계수가 나올 수 있다. 통계적 유의성(p-value)을 함께 확인하여 이 상관계수가 통계적으로 의미가 있는지를 반드시 검토해야 한다.

결론: 나침반을 올바르게 사용하는 법

상관계수는 데이터 속에서 변수 간의 관계라는 보물 지도를 찾아내는 강력한 나침반이다. 이 도구를 통해 우리는 복잡한 현상을 더 깊이 이해하고, 미래를 예측하며, 더 나은 의사결정을 내릴 수 있다.

하지만 나침반의 바늘이 가리키는 방향이 항상 최종 목적지를 의미하지는 않듯, 상관관계가 모든 것을 설명해주지는 않는다. 상관관계 뒤에 숨어있는 진짜 인과관계를 찾기 위해서는 데이터 시각화, 도메인 지식, 그리고 비판적 사고가 반드시 함께해야 한다. 이 핸드북이 당신의 데이터 항해에 든든한 길잡이가 되기를 바란다.