북마크    
근의 공식    
원 계산기    
타원 넓이    
구의 부피    
캡슐 부피    
ROI 계산기    
IRR 계산기    
GDP 계산기    
CTR 계산기    
LTV 계산기    
CAC 계산기    
BMI 계산기    
1RM 계산기    
진법 변환    
급여 환산    
   추가
확률과 무작위 계산기
독립사건 확률
독립사건 확률
두 사건 확률 역산
두 사건 확률 역산
반복 시행의 확률
반복 시행의 확률
조건부확률·베이즈
조건부확률·베이즈
기댓값 계산기
기댓값 계산기
이항분포 계산기
이항분포 계산기
순열·조합
순열·조합
원순열·염주순열
원순열·염주순열
중복순열·중복조합
중복순열·중복조합
난수 생성기
난수 생성기
평균과 통계 계산기
평균 계산기
평균 계산기
대푯값 계산기
대푯값 계산기
표준편차 계산기
표준편차 계산기
사분위수 계산기
사분위수 계산기
도수분포표 계산기
도수분포표 계산기
상관계수 계산기
상관계수 계산기
정규분포 확률
정규분포 확률
z점수 계산기
z점수 계산기
신뢰구간 계산기
신뢰구간 계산기
표본 크기 계산기
표본 크기 계산기
표지 재포획법
표지 재포획법
p값 계산기
p값 계산기
비율과 백분율 계산기
퍼센트 계산기
퍼센트 계산기
증감률 계산기
증감률 계산기
퍼센트 차이
퍼센트 차이
오차율 계산기
오차율 계산기
비례식 계산기
비례식 계산기
할인율 계산기
할인율 계산기
부가세 계산기
부가세 계산기
마진율 계산기
마진율 계산기
속력 계산기
속력 계산기
속력 계산기
밀도와 농도 계산기
밀도 계산기
밀도 계산기
몰 농도 계산기
몰 농도 계산기
분자량·몰 질량
분자량·몰 질량
물리와 전기 계산기
옴의 법칙 계산
옴의 법칙 계산
와트·암페어 변환
와트·암페어 변환
저항 색 코드
저항 색 코드
전압강하 계산
전압강하 계산
단위 변환 계산기
평 ↔ m² 환산
평 ↔ m² 환산
무게 단위 변환
무게 단위 변환
신발 사이즈 변환
신발 사이즈 변환
정수와 양수·음수 계산기
나눗셈 세로셈
나눗셈 세로셈
최소공배수
최소공배수
최대공약수
최대공약수
양수 음수 계산기
양수 음수 계산기
소인수분해
소인수분해
일차부정방정식
일차부정방정식
나머지 계산기
나머지 계산기
약수 계산기
약수 계산기
로마 숫자 변환
로마 숫자 변환
분수·소수와 어림하기 계산기
분수 계산기
분수 계산기
대분수 계산기
대분수 계산기
약분 계산기
약분 계산기
분수 → 소수 변환
분수 → 소수 변환
소수 → 분수 변환
소수 → 분수 변환
반올림 계산기
반올림 계산기
방정식과 부등식 계산기
일차방정식 계산기
일차방정식 계산기
연립방정식 계산기
연립방정식 계산기
근의 공식
근의 공식
절댓값 방정식
절댓값 방정식
이차부등식 계산기
이차부등식 계산기
다항식과 전개 계산기
이항정리 계산기
이항정리 계산기
제곱근과 거듭제곱근 계산기
근호 계산기
근호 계산기
거듭제곱근 계산
거듭제곱근 계산
지수와 로그 계산기
거듭제곱 계산기
거듭제곱 계산기
로그 계산기
로그 계산기
상용로그와 자릿수
상용로그와 자릿수
과학적 표기법
과학적 표기법
과학적 표기법 계산
과학적 표기법 계산
반감기 계산기
반감기 계산기
복소수 계산기
복소수 계산기
복소수 계산기
복소수 극형식
복소수 극형식
드무아브르 정리
드무아브르 정리
함수와 그래프 계산기
기울기 계산기
기울기 계산기
일차함수 계산기
일차함수 계산기
정비례·반비례
정비례·반비례
이차함수 계산기
이차함수 계산기
두 점 사이의 거리
두 점 사이의 거리
3차원 거리 계산
3차원 거리 계산
내분점·외분점
내분점·외분점
점과 직선의 거리
점과 직선의 거리
위도·경도 거리
위도·경도 거리
완전제곱식 계산기
완전제곱식 계산기
원의 방정식 계산기
원의 방정식 계산기
이차곡선 계산기
이차곡선 계산기
극좌표 변환 계산기
극좌표 변환 계산기
수열 계산기
등차수열 계산기
등차수열 계산기
등비수열 계산기
등비수열 계산기
피보나치 수열
피보나치 수열
점화식 계산기
점화식 계산기
벡터 계산기
벡터 계산기
벡터 계산기
외적 계산기
외적 계산기
행렬 계산기
행렬 계산기
행렬 계산기
행렬식 계산기
행렬식 계산기
역행렬 계산기
역행렬 계산기
평면도형 계산기
삼각비 계산기
삼각비 계산기
도 ⇔ 라디안 변환
도 ⇔ 라디안 변환
삼각함수의 합성
삼각함수의 합성
삼각형 계산기
삼각형 계산기
삼각형 넓이 계산기
삼각형 넓이 계산기
직각삼각형 계산
직각삼각형 계산
피타고라스 정리
피타고라스 정리
다각형의 내각·외각
다각형의 내각·외각
닮음비·넓이·부피
닮음비·넓이·부피
평행선과 각
평행선과 각
직사각형의 넓이
직사각형의 넓이
평행사변형 넓이
평행사변형 넓이
사다리꼴 넓이
사다리꼴 넓이
원 계산기
원 계산기
부채꼴 넓이
부채꼴 넓이
원주각 계산기
원주각 계산기
타원 넓이
타원 넓이
입체도형 계산기
정육면체 부피
정육면체 부피
정육면체 겉넓이
정육면체 겉넓이
직육면체 부피
직육면체 부피
직육면체 겉넓이
직육면체 겉넓이
원기둥 부피
원기둥 부피
원기둥 겉넓이
원기둥 겉넓이
구의 부피
구의 부피
구의 겉넓이
구의 겉넓이
구결의 부피
구결의 부피
구관의 넓이
구관의 넓이
타원체의 부피
타원체의 부피
타원체의 겉넓이
타원체의 겉넓이
사각뿔의 부피
사각뿔의 부피
사각뿔의 겉넓이
사각뿔의 겉넓이
원뿔의 부피
원뿔의 부피
원뿔의 겉넓이
원뿔의 겉넓이
원뿔대의 부피
원뿔대의 부피
원뿔대의 겉넓이
원뿔대의 겉넓이
파이프 부피
파이프 부피
캡슐 부피
캡슐 부피
캡슐 겉넓이
캡슐 겉넓이
날짜와 시간 계산기
만 나이 계산기
만 나이 계산기
일수 계산기
일수 계산기
며칠 후·전 날짜
며칠 후·전 날짜
몇 시간 후·전 계산
몇 시간 후·전 계산
요일 계산기
요일 계산기
시간 더하기 빼기
시간 더하기 빼기
시차 계산기
시차 계산기
근무시간 계산기
근무시간 계산기
시간 차이 계산기
시간 차이 계산기
근무시간 계산기
근무시간 계산기
금융과 경제 계산기
복리 계산기
복리 계산기
단리 계산기
단리 계산기
이자 계산기
이자 계산기
재무용 계산기
재무용 계산기
현재가치 계산기
현재가치 계산기
미래가치 계산기
미래가치 계산기
ROI 계산기
ROI 계산기
IRR 계산기
IRR 계산기
회수기간 계산기
회수기간 계산기
평균 수익률 계산기
평균 수익률 계산기
GDP 계산기
GDP 계산기
웹 마케팅·광고 지표 계산기
CTR 계산기
CTR 계산기
전환율 계산기
전환율 계산기
CPC·CPM·CPA 계산
CPC·CPM·CPA 계산
ROAS 계산기
ROAS 계산기
손익분기 CPA
손익분기 CPA
LTV 계산기
LTV 계산기
CAC 계산기
CAC 계산기
이탈률 계산기
이탈률 계산기
A/B 테스트 유의성
A/B 테스트 유의성
A/B 표본 크기
A/B 표본 크기
SEO 유입 예측
SEO 유입 예측
손익분기점 계산기
손익분기점 계산기
마진율·마크업률
마진율·마크업률
CAGR 계산기
CAGR 계산기
건강과 피트니스 계산기
BMI 계산기
BMI 계산기
수면 주기 계산기
수면 주기 계산기
칼로리 계산기
칼로리 계산기
기초대사량 계산기
기초대사량 계산기
TDEE 계산기
TDEE 계산기
표준체중 계산기
표준체중 계산기
체지방률 계산기
체지방률 계산기
제지방량 계산기
제지방량 계산기
칼로리 소모 계산기
칼로리 소모 계산기
단백질 계산기
단백질 계산기
탄단지 계산기
탄단지 계산기
탄수화물 계산기
탄수화물 계산기
지방 섭취량 계산기
지방 섭취량 계산기
예상키 계산기
예상키 계산기
스포츠 계산기
골프 핸디캡
골프 핸디캡
페이스 계산기
페이스 계산기
1RM 계산기
1RM 계산기
목표심박수 계산기
목표심박수 계산기
날씨 계산기
열지수 계산기
열지수 계산기
겨울 체감온도
겨울 체감온도
이슬점 계산기
이슬점 계산기
컴퓨터 계산기
진법 변환
진법 변환
서브넷 계산기
서브넷 계산기
다운로드 시간 계산
다운로드 시간 계산
가계와 공과금 계산기
가전 전기요금
가전 전기요금
전기요금 계산기
전기요금 계산기
연간 kWh→전기요금
연간 kWh→전기요금
에어컨 평형 계산
에어컨 평형 계산
에어컨 전기요금
에어컨 전기요금
난방 전기요금 비교
난방 전기요금 비교
가스 vs 전기 요금
가스 vs 전기 요금
LED 교체 절약액
LED 교체 절약액
급여 환산
급여 환산
가계 수지 계산
가계 수지 계산
자동차 계산기
주유비 계산기
주유비 계산기
전기차 충전 요금
전기차 충전 요금
전기차 vs 휘발유차
전기차 vs 휘발유차
연비 계산기
연비 계산기
타이어 사이즈 계산
타이어 사이즈 계산
태양광 발전과 에너지 저장 계산기
태양광 발전량
태양광 발전량
태양광 패널 장수
태양광 패널 장수
태양광 회수기간
태양광 회수기간
ESS 용량·사용 시간
ESS 용량·사용 시간
집과 DIY 계산기
타일 수량 계산
타일 수량 계산
계단 치수 계산
계단 치수 계산
콘크리트 물량
콘크리트 물량
벽·천장·바닥 면적
벽·천장·바닥 면적
벽지 계산기
벽지 계산기
페인트 계산기
페인트 계산기
마루 계산기
마루 계산기
외벽 면적 계산
외벽 면적 계산
자갈 계산기
자갈 계산기
몰탈 배합 계산
몰탈 배합 계산
경사도 계산
경사도 계산
목재 재단 계산
목재 재단 계산
건폐율·용적률
건폐율·용적률
장판 필요량
장판 필요량
단열재 필요량
단열재 필요량
커튼 사이즈
커튼 사이즈
TV 크기·시청 거리
TV 크기·시청 거리
흙·배양토 필요량
흙·배양토 필요량
잔디 평수·장수
잔디 평수·장수
블록 담장 수량
블록 담장 수량
벽돌 필요 장수
벽돌 필요 장수
데크 자재 계산
데크 자재 계산
경사로 길이
경사로 길이
피스 가이드 홀
피스 가이드 홀
필요 환기량
필요 환기량
페인트 희석
페인트 희석
걸레받이 계산기
걸레받이 계산기
블라인드 사이즈
블라인드 사이즈
액자 거는 높이
액자 거는 높이
배수 구배·높이차
배수 구배·높이차
피스 수량 계산
피스 수량 계산
목재 재 계산
목재 재 계산
펜스 자재 계산
펜스 자재 계산
목재 수축량 계산
목재 수축량 계산
실리콘 필요량
실리콘 필요량
방 열손실 계산기
방 열손실 계산기
가구 반입 계산기
가구 반입 계산기
이사 박스 개수
이사 박스 개수
수납 용량 계산기
수납 용량 계산기
합판 재단 계산기
합판 재단 계산기
선반 처짐 계산
선반 처짐 계산

상관계수·공분산 계산기(산점도·회귀직선)

관계를 알아보고 싶은 두 종류의 자료를 각각 쉼표(,)로 구분해 입력하세요. 상관계수 r, 공분산, 회귀직선의 식을 계산하고 산점도에 회귀직선을 겹쳐 그립니다.

x와 y는 첫 번째 x와 첫 번째 y, 두 번째 x와 두 번째 y, …처럼 같은 순서끼리 짝이 됩니다. 같은 개수(2쌍 이상)로 입력하세요. 소수와 음수도 쓸 수 있습니다.
계산 결과·그래프
왼쪽 입력란에 x와 y의 자료를 쉼표로 구분해 넣고 ‘계산’을 누르면 여기에 결과와 산점도가 표시됩니다.

이 페이지에서 할 수 있는 것

  • \(x\)와 \(y\)의 짝 자료(두 변량)를 넣기만 하면 상관계수 \(r\)과 공분산 \(s_{xy}\)를 그 자리에서 알 수 있습니다
  • \(x\), \(y\) 각각의 평균, 분산, 표준편차와 회귀직선(최소제곱법) \(y = ax + b\)의 식도 함께 계산합니다
  • 산점도에 회귀직선과 평균점을 겹쳐 그리므로 두 자료의 관계(오른쪽 위로 올라가는지, 오른쪽 아래로 내려가는지, 흩어져 있는지)를 한눈에 알 수 있습니다
  • 상관계수의 값으로 ‘강한 양의 상관관계’, ‘상관관계가 거의 없음’ 같은 기준에 따른 해석도 보여 줍니다
  • 공식의 쉬운 해설과 Excel·Google 스프레드시트·Python에 그대로 복사해 쓸 수 있는 수식도 이 페이지에 정리되어 있습니다
공분산과 분산은 ‘자료의 쌍의 수 \(n\)으로 나누는’ 정의(모집단 방식)로 계산합니다. 많은 통계 교재와 프로그램은 \(n-1\)로 나누는 표본 방식을 쓰지만(차이는 Excel 부분에서 설명합니다), 상관계수 \(r\)과 회귀직선은 어느 쪽으로 계산해도 같습니다. 자료는 \(x\), \(y\)를 같은 개수로 2쌍 이상 넣어야 합니다.

이 계산은 어디에 쓰일까요?

공부 시간과 성적의 관계를 숫자로 확인하기(교육·학습)

‘공부 시간을 늘리면 성적이 오를까’를 감이 아니라 자료로 확인하는 것이 상관계수의 대표적인 쓰임입니다. 학생마다의 공부 시간과 점수의 짝으로 \(r\)을 계산하면 관계의 강도를 하나의 숫자로 알 수 있습니다.
학교나 학원에서는 모의고사의 과목 간 상관관계(수학을 잘하는 학생은 과학도 잘하는지 등)를 조사해 지도에 활용하기도 합니다. 다만 상관관계가 있어도 ‘시간만 늘리면 반드시 오른다’는 인과관계의 증명은 되지 않는다는 점에 주의해야 합니다.

기온과 매출의 관계로 발주량 정하기(소매·외식)

아이스크림이나 차가운 음료의 매출은 기온과 양의 상관관계, 호빵이나 어묵은 기온과 음의 상관관계를 가진다고 알려져 있습니다. 편의점이나 음식점에서는 과거의 ‘기온과 판매량’ 자료로 상관관계를 확인하고, 일기 예보에 맞춰 발주량이나 진열을 바꿉니다.
회귀직선까지 구하면 ‘내일 예상 기온이 30도라면 판매량은 약 몇 개’라는 구체적인 예측의 기준도 세울 수 있습니다.

가격 움직임의 상관관계가 낮은 자산을 섞어 위험 줄이기(금융·자산 운용)

투자의 세계에서는 주식, 채권, 금 등 자산끼리의 가격 움직임의 상관계수가 분산 투자의 기본 도구입니다. 상관관계가 낮은(또는 음의) 자산을 섞으면 한쪽이 내려도 다른 쪽은 잘 내려가지 않으므로 자산 전체의 가격 변동 폭을 줄일 수 있습니다.
연기금이나 펀드의 운용에서도 자산 배분을 정하기 전에 반드시 자산 사이의 상관관계를 분석합니다.

제조 조건과 불량률의 관계로 원인 후보 좁히기(제조·품질 관리)

공장에서 불량품이 늘었을 때 ‘가공 온도’, ‘습도’, ‘기계 가동 시간’ 같은 조건과 불량률의 상관계수를 조사하면 어떤 조건이 불량과 함께 움직이는지 좁혀 갈 수 있습니다. 품질 관리에서는 이 분석에 쓰는 산점도가 ‘QC 7가지 도구’ 중 하나로 꼽힐 만큼 기본적인 방법입니다.
상관관계가 강한 조건을 찾으면, 실험으로 조건을 바꿔 인과관계를 확인하는 순서로 개선을 진행합니다.

건강과 질병의 요인을 찾는 연구의 입구(의료·역학)

‘운동량과 혈압’, ‘흡연량과 어떤 병에 걸릴 가능성’처럼 생활 습관과 건강의 관계를 조사하는 연구도 먼저 자료의 상관관계를 확인하는 데서 시작합니다.
한편 ‘상관관계 = 원인’이라고 성급하게 판단하지 않는 훈련의 장이기도 합니다. 유명한 예가 ‘아이스크림의 매출과 물놀이 사고의 건수에는 양의 상관관계가 있다’는 이야기인데, 이는 둘 다 기온이라는 공통의 요인 때문에 늘어날 뿐입니다. 의학 연구에서는 이런 제3의 요인의 영향을 없애는 방법을 거듭해 인과관계에 다가갑니다.

공식과 그림

공분산 \(s_{xy}\)
그림
수학 표기 (일반적인 수식)
\(s_{xy}\) \(=\) \(\displaystyle\sum_{i=1}^{n}\) \((x_i - \bar{x})\) \((y_i - \bar{y})\) \(\div\) \(n\)
말로 쓴 표기 (기호를 말로 바꾼 식)
⑤ \(s_{xy}\): 공분산 \(=\) ③ \(\displaystyle\sum\): 모두 더하기 ① \((x_i - \bar{x})\): \(x\)의 편차 ② \((y_i - \bar{y})\): \(y\)의 편차 \(\div\) ④ \(n\): 자료의 쌍의 수
공식을 말로 읽으면
① 각 자료에 대해 \(x\)의 편차(\(x\)의 값과 \(x\)의 평균의 차) 와
② \(y\)의 편차(\(y\)의 값과 \(y\)의 평균의 차) 를 곱하고,
③ 그 곱을 모두 더한 합 \(\displaystyle\sum\) 을
④ \(n\): 자료의 쌍의 수 로 나누면
⑤ \(s_{xy}\): 공분산 이 됩니다.
간단한 예
학생 5명의 공부 시간 \(x\)(시간)가 1, 2, 3, 4, 5, 쪽지 시험 점수 \(y\)(점)가 2, 4, 4, 4, 6(평균은 \(\bar{x} = 3\), \(\bar{y} = 4\))이라면
\(s_{xy}\): 공분산 \(=\) 편차의 곱의 합(8) \(\div\) 쌍의 수(5쌍)
\((-2)(-2) + (-1)(0) + (0)(0) + (1)(0) + (2)(2) = 4 + 0 + 0 + 0 + 4 = 8\)
\(s_{xy} = 8 \div 5 = 1.6\)
이해의 핵심
공분산은 ‘두 자료가 함께 움직이는 경향’을 숫자로 나타낸 것입니다. \(x\)와 \(y\)가 둘 다 평균보다 크거나(+ × +) 둘 다 평균보다 작은(− × −) 자료가 많으면 곱의 합은 양수가 되고, 한쪽만 평균보다 큰(+ × −) 자료가 많으면 음수가 됩니다. 그래서 공분산이 양수이면 ‘\(x\)가 클수록 \(y\)도 크다’(산점도가 오른쪽 위로 올라감), 음수이면 ‘\(x\)가 클수록 \(y\)는 작다’(오른쪽 아래로 내려감), 0에 가까우면 ‘뚜렷한 경향이 없다’고 읽을 수 있습니다. 이 페이지에서는 분모를 분산과 마찬가지로 자료의 쌍의 수 \(n\)으로 합니다(모집단 방식). 통계 프로그램에는 \(n-1\)로 나누는 ‘표본공분산’도 있으며, Excel에서는 함수 이름으로 구별합니다(Excel 부분 참고).
상관계수 \(r\)
그림
수학 표기 (일반적인 수식)
\(r\) \(=\) \(s_{xy}\) \(\div\) \((\) \(s_x\) \(\times\) \(s_y\) \()\)
말로 쓴 표기 (기호를 말로 바꾼 식)
④ \(r\): 상관계수 \(=\) ① \(s_{xy}\): 공분산 \(\div\) \((\) ② \(s_x\): \(x\)의 표준편차 \(\times\) ③ \(s_y\): \(y\)의 표준편차 \()\)
공식을 말로 읽으면
① \(s_{xy}\): 공분산 을
② \(s_x\): \(x\)의 표준편차 와
③ \(s_y\): \(y\)의 표준편차 의 곱으로 나누면
④ \(r\): 상관계수 가 됩니다(\(r\)은 반드시 \(-1\) 이상 \(1\) 이하).
간단한 예
앞의 공부 시간과 점수의 예(\(s_{xy} = 1.6\), \(s_x = \sqrt{2}\), \(s_y = \sqrt{1.6}\))라면
\(r\): 상관계수 \(=\) 공분산(1.6) \(\div\) \((\) \(\sqrt{2}\) \(\times\) \(\sqrt{1.6}\) \()\)
\(s_x \times s_y = \sqrt{2} \times \sqrt{1.6} = \sqrt{3.2} \fallingdotseq 1.789\)
\(r = 1.6 \div 1.789 \fallingdotseq 0.894\)
이해의 핵심
공분산은 편리하지만 단위의 영향을 받습니다(시간을 ‘분’으로 바꾸기만 해도 값이 60배가 됩니다). 그래서 공분산을 \(x\), \(y\) 각각의 표준편차로 나누어 단위에 영향을 받지 않는 \(-1\)부터 \(1\)까지의 숫자로 바꾼 것이 상관계수 \(r\)입니다. \(r\)이 \(1\)에 가까울수록 강한 양의 상관관계(오른쪽 위로 올라가는 직선에 가까움), \(-1\)에 가까울수록 강한 음의 상관관계(오른쪽 아래로 내려가는 직선에 가까움), \(0\)에 가까울수록 직선적인 관계가 약하다고 읽습니다. 흔히 쓰는 기준은 \(0.7 \leq |r|\)일 때 ‘강한 상관관계’, \(0.4 \leq |r| < 0.7\)일 때 ‘중간 정도’, \(0.2 \leq |r| < 0.4\)일 때 ‘약함’, \(|r| < 0.2\)일 때 ‘상관관계가 거의 없음’입니다(분야에 따라 기준은 달라집니다). 주의할 점은 상관계수가 재는 것은 ‘직선적인 관계’뿐이라는 것입니다. U자 모양 같은 관계는 \(r\)이 0에 가까워도 관계가 ‘없다’고 할 수 없습니다. 또 상관관계가 있다는 것과 ‘한쪽이 원인이고 다른 쪽이 결과’라는 것(인과관계)은 별개의 이야기입니다.
회귀직선(최소제곱법) \(y = ax + b\)
그림
수학 표기 (일반적인 수식)
\(a\) \(=\) \(s_{xy}\) \(\div\) \(s_x^{2}\)
\(b\) \(=\) \(\bar{y}\) \(-\) \(a\,\bar{x}\)
말로 쓴 표기 (기호를 말로 바꾼 식)
③ \(a\): 회귀직선의 기울기 \(=\) ① \(s_{xy}\): 공분산 \(\div\) ② \(s_x^2\): \(x\)의 분산
⑥ \(b\): 회귀직선의 y절편 \(=\) ④ \(\bar{y}\): \(y\)의 평균 \(-\) ⑤ 기울기 \(a\) × \(x\)의 평균 \(\bar{x}\)
공식을 말로 읽으면
① \(s_{xy}\): 공분산 을
② \(s_x^2\): \(x\)의 분산 으로 나누면
③ \(a\): 회귀직선의 기울기 가 됩니다.
④ \(\bar{y}\): \(y\)의 평균 에서
⑤ 기울기 \(a\)와 \(x\)의 평균 \(\bar{x}\)의 곱 을 빼면
⑥ \(b\): 회귀직선의 y절편 이 됩니다.
간단한 예
앞의 예(\(s_{xy} = 1.6\), \(s_x^2 = 2\), \(\bar{x} = 3\), \(\bar{y} = 4\))라면
기울기 \(a\) \(=\) 공분산(1.6) \(\div\) \(x\)의 분산(2)
\(a = 1.6 \div 2 = 0.8\)
\(b = 4 - 0.8 \times 3 = 1.6\)
\(y = 0.8x + 1.6\)
이해의 핵심
회귀직선은 산점도의 점들에 ‘가장 잘 들어맞는 직선’입니다. 각 점과 직선 사이의 세로 방향의 차이(오차)를 제곱해서 모두 더한 값이 가장 작아지도록 직선을 고릅니다. 이렇게 정하는 방법을 최소제곱법이라고 합니다(구하는 계산은 위의 나눗셈과 뺄셈뿐입니다). 회귀직선은 반드시 평균점 \((\bar{x},\ \bar{y})\)를 지납니다. 이 페이지의 산점도에서도 회귀직선이 평균점을 지나는 것을 확인할 수 있습니다. 회귀직선을 쓰면 ‘공부 시간이 3.5시간이라면 점수는 약 \(0.8 \times 3.5 + 1.6 = 4.4\)점’과 같은 예측을 할 수 있습니다. 다만 자료의 범위에서 크게 벗어난 \(x\)까지 직선을 늘린 예측은 믿기 어렵고, 상관관계가 약한 자료에서는 직선을 그을 수는 있어도 예측의 의미가 거의 없다는 점에 주의하세요.
상관계수는 ① \(x\), \(y\) 각각의 평균을 구한다 → ② 편차의 곱 \((x_i - \bar{x})(y_i - \bar{y})\)를 모두 더해 쌍의 수 \(n\)으로 나누어 공분산 \(s_{xy}\)를 구한다 → ③ 공분산을 \(x\), \(y\)의 표준편차의 곱으로 나눈다, 의 순서로 구합니다. \(r\)은 반드시 \(-1\) 이상 \(1\) 이하가 되며, \(1\)에 가까울수록 오른쪽 위로 올라가는, \(-1\)에 가까울수록 오른쪽 아래로 내려가는 직선적인 관계가 강하다는 것을 나타냅니다.

용어·기호 해설

기호

\(x_i,\ y_i\) 엑스 아이, 와이 아이 \(i\)번째 쌍의 \(x\)의 값과 \(y\)의 값입니다. (예: 세 번째 학생의 공부 시간 \(x_3\)과 점수 \(y_3\)) \(i\)는 index(번호)를 나타낼 때 자주 쓰는 문자입니다.
\(n\) 엔 자료의 쌍의 수입니다. number(수)의 머리글자입니다. (예: 5명분의 짝이라면 \(n = 5\))
\(\bar{x},\ \bar{y}\) 엑스 바, 와이 바 \(x\), \(y\) 각각의 평균입니다. 문자 위의 가로 막대(바)는 ‘평균’을 나타내는 관례적인 기호입니다.
\(x_i - \bar{x}\) 엑스 아이 빼기 엑스 바 \(x\)의 편차입니다. 각 자료가 \(x\)의 평균에서 얼마나 떨어져 있는지를 나타냅니다. \(y_i - \bar{y}\)는 \(y\)의 편차입니다.
\(s_{xy}\) 에스 엑스와이 \(x\)와 \(y\)의 공분산입니다. 편차의 곱의 평균으로, 두 자료가 함께 움직이는 경향을 나타냅니다. \(s\)는 standard deviation(표준편차)과 같은 계열의 통계량임을 나타내는 관례적인 문자입니다.
\(s_x,\ s_y\) 에스 엑스, 에스 와이 \(x\), \(y\) 각각의 표준편차(흩어진 정도의 크기)입니다. 분산의 제곱근입니다.
\(s_x^2,\ s_y^2\) 에스 엑스 제곱, 에스 와이 제곱 \(x\), \(y\) 각각의 분산입니다. 편차의 제곱의 평균(\(n\)으로 나눔)입니다.
\(r\) 알 상관계수입니다. correlation(상관)이나 relation(관계)의 \(r\)에서 왔다고 합니다. 반드시 \(-1\) 이상 \(1\) 이하의 값이 됩니다.
\(\sum\) 시그마(합의 기호) ‘모두 더한다’는 뜻의 기호입니다. \(\sum_{i=1}^{n}\)는 ‘\(i = 1\)부터 \(n\)까지 모두 더한다’고 읽습니다.
\(a,\ b\) 에이, 비 회귀직선 \(y = ax + b\)의 기울기와 y절편입니다. 일차함수와 같은 기호입니다.

용어

상관관계 한쪽이 늘면 다른 쪽도 늘어나는(또는 줄어드는), 두 자료 사이의 직선적인 관계의 경향을 말합니다. 관계가 강할수록 산점도의 점들이 직선에 가깝게 늘어섭니다.
양의 상관관계 \(x\)가 늘면 \(y\)도 늘어나는 경향을 말합니다. 산점도는 오른쪽 위로 올라가고, 상관계수는 양수가 됩니다.
음의 상관관계 \(x\)가 늘면 \(y\)가 줄어드는 경향을 말합니다. 산점도는 오른쪽 아래로 내려가고, 상관계수는 음수가 됩니다.
상관계수 상관관계의 강도와 방향을 \(-1\)부터 \(1\)까지의 하나의 숫자로 나타낸 지표입니다(피어슨 상관계수라고도 합니다). 공분산을 \(x\), \(y\)의 표준편차의 곱으로 나누어 구합니다. 단위에 영향을 받지 않으므로 서로 다른 자료끼리도 강도를 비교할 수 있습니다.
공분산 \(x\)의 편차와 \(y\)의 편차의 곱의 평균입니다. 양수이면 오른쪽 위로 올라가는 경향, 음수이면 오른쪽 아래로 내려가는 경향을 나타냅니다. 이 페이지에서는 쌍의 수 \(n\)으로 나눕니다(모집단 방식).
산점도 짝 자료 \((x,\ y)\)를 좌표평면 위의 점으로 찍은 그림입니다. 점들이 늘어선 모양으로 상관관계의 방향과 강도를 한눈에 읽을 수 있습니다.
변량 키, 점수, 기온처럼 자료로 재는 양을 말합니다. 이 페이지에서는 \(x\)와 \(y\)의 ‘두 변량’의 관계를 알아봅니다.
편차 각 자료와 평균의 차입니다. 양수이면 평균보다 크고, 음수이면 평균보다 작다는 뜻입니다. 공분산, 분산, 표준편차는 모두 편차로 만들어집니다.
분산 편차의 제곱의 평균입니다. 자료가 흩어진 정도의 크기를 나타냅니다. 회귀직선의 기울기의 분모에 나옵니다.
표준편차 분산의 제곱근입니다. 단위가 자료와 같아지므로 흩어진 정도의 기준으로 쓰기 좋은 값입니다. 상관계수의 분모에 나옵니다.
회귀직선 (추세선) 산점도의 점들에 가장 잘 들어맞는 직선 \(y = ax + b\)를 말합니다. \(x\)의 값으로 \(y\)의 값을 예측할 때 씁니다. Excel 등에서는 ‘추세선’이라고 부릅니다.
최소제곱법 각 점과 직선 사이의 세로 방향의 차이(오차)를 제곱해서 모두 더한 값이 가장 작아지도록 직선의 기울기와 y절편을 정하는 방법입니다. 회귀직선은 이 방법으로 정한 직선입니다.
이상값 다른 점들에서 크게 떨어진 값입니다. 상관계수는 이상값의 영향을 크게 받으므로 산점도와 함께 확인하는 것이 기본입니다.
연관성 두 양이 함께 움직이는(한쪽이 늘면 다른 쪽도 늘거나 줄어드는) 관계입니다. 상관관계가 있어도 한쪽이 원인이고 다른 쪽이 결과(인과관계)라고는 할 수 없습니다. 뒤에 공통의 원인(제3의 요인)이 있을 뿐인 경우도 있습니다.
인과관계 한쪽이 원인이고 다른 쪽이 그 결과로 정해지는 관계입니다. 연관성(함께 움직이는 것)이 있다는 것만으로는 인과관계라고 할 수 없으며, 뒤에 공통의 원인(제3의 요인)이 있을 뿐인 경우도 있습니다.

먼저 알아 두면 좋은 내용

이 페이지의 계산을 ‘뜻을 이해하고’ 쓸 수 있도록, 미리 알아 두면 좋은 내용을 정리했습니다.
막히면 이 표의 내용으로 돌아가 복습하는 것이 지름길입니다.

평균(초등학교 5학년, 10~11세)
  • 평균 = 합계 ÷ 개수로 구할 수 있다는 것을 아는 것
  • 평균이 ‘자료 전체의 한가운데를 나타내는 기준’이라는 것을 아는 것
정수와 유리수의 계산(중학교 1학년, 12~13세)
  • \((-1) \times 2 = -2\)나 \((-2) \times (-2) = 4\)처럼 음수가 들어간 곱셈을 할 수 있는 것
  • 음수끼리의 곱은 양수가 된다는 것을 아는 것(공분산의 부호의 뜻을 이해하는 바탕이 됩니다)
좌표평면과 일차함수(중학교 1~2학년, 12~14세)
  • \((x,\ y)\)의 쌍을 좌표평면 위의 점으로 찍을 수 있는 것(산점도는 이런 점들의 모임입니다)
  • 일차함수 \(y = ax + b\)에서 \(a\)가 기울기, \(b\)가 y절편이라는 것을 아는 것(회귀직선은 이 모양의 직선입니다)
제곱근(중학교 3학년, 14~15세)
  • \(\sqrt{9} = 3\)처럼 제곱근을 ‘제곱하면 그 수가 되는 수’로 이해하는 것
  • \(\sqrt{2} \times \sqrt{1.6} = \sqrt{3.2}\)처럼 제곱근끼리 곱셈을 할 수 있는 것
산포도와 상관관계(중학교 3학년, 14~15세)
  • 편차(각 자료와 평균의 차)가 무엇을 나타내는지 아는 것
  • 분산과 표준편차가 ‘흩어진 정도의 크기’를 숫자로 나타낸 것임을 아는 것(관련 페이지의 표준편차 계산기에서 복습할 수 있습니다)
  • 산점도에서 ‘오른쪽 위로 올라감, 오른쪽 아래로 내려감, 흩어져 있음’의 경향을 읽어 낼 수 있는 것

Excel로 계산하는 방법

아래 표를 통째로 복사해 Excel의 A1 셀에 붙여 넣으면 그대로 사용할 수 있습니다.
‘공분산 s_xy’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
공분산 s_xy(n으로 나눔) =COVARIANCE.P(B1:B5,B6:B10)
(참고) n−1로 나누는 표본공분산 =COVARIANCE.S(B1:B5,B6:B10)
‘상관계수 r’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
상관계수 r =CORREL(B1:B5,B6:B10)
(참고) PEARSON 함수로도 같은 값 =PEARSON(B1:B5,B6:B10)
‘회귀직선 y = ax + b’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
기울기 a =SLOPE(B6:B10,B1:B5)
y절편 b =INTERCEPT(B6:B10,B1:B5)
‘평균·분산·표준편차(n으로 나눔)’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
x의 평균 x̄ =AVERAGE(B1:B5)
y의 평균 ȳ =AVERAGE(B6:B10)
x의 분산 s_x² =VARP(B1:B5)
x의 표준편차 s_x =STDEVP(B1:B5)
y의 분산 s_y² =VARP(B6:B10)
y의 표준편차 s_y =STDEVP(B6:B10)
붙여 넣으면 B1~B5가 x의 입력 칸, B6~B10이 y의 입력 칸이 되고, 초록색 굵은 글씨의 셀에 자동으로 계산 결과가 나옵니다.
첫 번째 표의 공분산은 1.6(표본공분산은 2), 두 번째 표의 상관계수는 약 0.8944, 세 번째 표는 기울기 0.8, y절편 1.6이 됩니다.
공분산의 함수는 두 가지이므로 주의하세요. COVARIANCE.P가 ‘n으로 나누는’ 공분산(이 계산기와 같음), COVARIANCE.S가 ‘n − 1로 나누는’ 표본공분산입니다. 오래된 Excel(2007 이전)에서는 COVARIANCE.P 대신 COVAR를 씁니다.
상관계수는 CORREL로도 PEARSON으로도 같은 값이 나옵니다(상관계수는 n으로 나누든 n − 1로 나누든 같은 값이 되므로 함수를 구별해서 쓸 필요가 없습니다).
SLOPE와 INTERCEPT는 ‘y의 범위, x의 범위’ 순서로 지정합니다(x가 먼저가 아니라는 점에 주의하세요).
자료의 쌍의 수를 바꾸고 싶을 때는 숫자의 행을 늘리거나 줄인 뒤, 수식의 ‘B1:B5’, ‘B6:B10’ 부분을 실제 자료 범위로 바꾸세요.

Google 스프레드시트로 계산하는 방법

아래 표를 통째로 복사해 Google 스프레드시트의 A1 셀에 붙여 넣으면 그대로 사용할 수 있습니다.
‘공분산 s_xy’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
공분산 s_xy(n으로 나눔) =COVAR(B1:B5,B6:B10)
‘상관계수 r’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
상관계수 r =CORREL(B1:B5,B6:B10)
‘회귀직선 y = ax + b’를 구하는 표
x의 1번째 1
x의 2번째 2
x의 3번째 3
x의 4번째 4
x의 5번째 5
y의 1번째 2
y의 2번째 4
y의 3번째 4
y의 4번째 4
y의 5번째 6
기울기 a =SLOPE(B6:B10,B1:B5)
y절편 b =INTERCEPT(B6:B10,B1:B5)
Excel과 거의 같은 함수를 그대로 쓸 수 있습니다. 표를 통째로 복사해 A1 셀에 붙여 넣고, B1~B10을 원하는 숫자로 바꾸세요.
Google 스프레드시트에서는 ‘n으로 나누는’ 공분산을 COVAR 함수로 구합니다(이 계산기와 같은 정의. COVARIANCE.P라는 이름으로도 같은 함수를 부를 수 있습니다). 상관계수는 Excel과 같은 CORREL입니다.

Python으로 계산하는 방법

import statistics

xs = [1, 2, 3, 4, 5]      # x의 자료(예: 공부 시간)
ys = [2, 4, 4, 4, 6]      # y의 자료(예: 쪽지 시험 점수)

n = len(xs)
mean_x = statistics.mean(xs)      # x의 평균
mean_y = statistics.mean(ys)      # y의 평균

# 공분산 s_xy(모집단 방식: n으로 나눔)
covariance = sum((x - mean_x) * (y - mean_y) for x, y in zip(xs, ys)) / n

sd_x = statistics.pstdev(xs)      # x의 표준편차(n으로 나눔)
sd_y = statistics.pstdev(ys)      # y의 표준편차(n으로 나눔)

r = covariance / (sd_x * sd_y)    # 상관계수

slope = covariance / statistics.pvariance(xs)   # 회귀직선의 기울기 a
intercept = mean_y - slope * mean_x             # 회귀직선의 y절편 b

print(f"공분산 s_xy: {covariance}")
print(f"상관계수 r: {r}")
# y절편에 부동소수점 오차(1.5999...)가 생길 수 있으므로 유효숫자 10자리로 반올림해 표시
print(f"회귀직선: y = {slope:.10g}x + {intercept:.10g}")
표준 라이브러리(statistics 모듈)만으로 동작합니다. 앞에 ‘p’가 붙은 pstdev, pvariance가 ‘n으로 나누는’ 정의의 함수입니다. 이 예를 실행하면 공분산 1.6, 상관계수 0.894…, 회귀직선 y = 0.8x + 1.6이 표시됩니다. Python 3.10 이상이라면 statistics.correlation(xs, ys)으로도 같은 상관계수를 구할 수 있습니다(상관계수는 n으로 나누든 n − 1로 나누든 같은 값이 됩니다). 참고로 statistics.covariance(xs, ys)는 ‘n − 1로 나누는’ 표본공분산이므로, 이 페이지의 공분산과 맞추고 싶을 때는 위의 예처럼 계산하세요.

LaTeX 등 수식 언어로 쓰는 법(복사 가능)

공분산 \(s_{xy}\)
s_xy = {(x₁ − x̄)(y₁ − ȳ) + … + (xₙ − x̄)(yₙ − ȳ)} ÷ n
s_{xy} = \dfrac{1}{n}\sum_{i=1}^{n} (x_i - \bar{x})(y_i - \bar{y})
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <msub><mi>s</mi><mrow><mi>x</mi><mi>y</mi></mrow></msub>
    <mo>=</mo>
    <mfrac><mn>1</mn><mi>n</mi></mfrac>
    <munderover>
      <mo>&#x2211;</mo>
      <mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow>
      <mi>n</mi>
    </munderover>
    <mrow>
      <mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>&#x2212;</mo><mover><mi>x</mi><mo>&#x00AF;</mo></mover><mo>)</mo>
      <mo>(</mo><msub><mi>y</mi><mi>i</mi></msub><mo>&#x2212;</mo><mover><mi>y</mi><mo>&#x00AF;</mo></mover><mo>)</mo>
    </mrow>
  </mrow>
</math>
s_(xy) = (1/n) sum_(i=1)^n (x_i - bar x)(y_i - bar y)
Covariance[xdata, ydata]*(Length[xdata] - 1)/Length[xdata]  (* Covariance는 n-1로 나누므로 n으로 나눈 값으로 바꾸었습니다 *)
s_xy := add((x[i] - x_bar)*(y[i] - y_bar), i = 1 .. n)/n;
s_xy = mean((x - mean(x)).*(y - mean(y)));
s_xy = (1/n) ∑_(i=1)^n (x_i − x̄)(y_i − ȳ)
상관계수 \(r\)
r = s_xy ÷ (s_x × s_y)
r = \dfrac{s_{xy}}{s_x\, s_y}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <mi>r</mi>
    <mo>=</mo>
    <mfrac>
      <msub><mi>s</mi><mrow><mi>x</mi><mi>y</mi></mrow></msub>
      <mrow><msub><mi>s</mi><mi>x</mi></msub><msub><mi>s</mi><mi>y</mi></msub></mrow>
    </mfrac>
  </mrow>
</math>
r = s_(xy) / (s_x s_y)
Correlation[xdata, ydata]
r := s_xy/(s_x*s_y);
R = corrcoef(x, y); r = R(1, 2);
r = s_xy/(s_x s_y)
회귀직선(최소제곱법) \(y = ax + b\)
y = ax + b,  a = s_xy ÷ s_x²,  b = ȳ − a·x̄
y = ax + b, \quad a = \dfrac{s_{xy}}{s_x^{2}}, \quad b = \bar{y} - a\bar{x}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <mi>y</mi><mo>=</mo><mi>a</mi><mi>x</mi><mo>+</mo><mi>b</mi>
    <mo>,</mo><mspace width="1em"/>
    <mi>a</mi><mo>=</mo>
    <mfrac>
      <msub><mi>s</mi><mrow><mi>x</mi><mi>y</mi></mrow></msub>
      <msubsup><mi>s</mi><mi>x</mi><mn>2</mn></msubsup>
    </mfrac>
    <mo>,</mo><mspace width="1em"/>
    <mi>b</mi><mo>=</mo>
    <mover><mi>y</mi><mo>&#x00AF;</mo></mover>
    <mo>&#x2212;</mo>
    <mi>a</mi><mover><mi>x</mi><mo>&#x00AF;</mo></mover>
  </mrow>
</math>
y = a x + b, a = s_(xy)/s_x^2, b = bar y - a bar x
lm = LinearModelFit[Transpose[{xdata, ydata}], t, t]; lm["BestFitParameters"]
a := s_xy/s_x^2; b := y_bar - a*x_bar;
p = polyfit(x, y, 1);  % p(1) = 기울기 a, p(2) = y절편 b
y = ax + b,  a = s_xy/s_x^2,  b = ȳ − ax̄

ChatGPT 에게 물어서 계산하는 방법

당신은 통계 계산 도우미입니다. 다음 계산을 반드시 Python 코드를 실제로 실행해서 하고, 실행 결과의 숫자만을 근거로 답해 주세요(암산이나 추측으로 답하지 마세요).

다음 짝 자료에 대해 아래 값을 각각 구해 주세요.
x: 1, 2, 3, 4, 5
y: 2, 4, 4, 4, 6
1. x와 y 각각의 평균, n으로 나누는 분산과 표준편차
2. 공분산 s_xy(편차의 곱의 합을 쌍의 수 n으로 나눈 값. n − 1로 나누지 마세요)
3. 상관계수 r
4. 회귀직선 y = ax + b(최소제곱법)의 기울기 a와 y절편 b

계산에 사용한 공식과 실행 결과의 숫자를 보여 주세요.

사용법
  1. 1
    숫자 입력
    계산하고 싶은 숫자를 입력란에 입력합니다
  2. 2
    계산
    ‘계산’ 버튼을 누릅니다
  3. 3
    결과 확인
    계산 결과가 바로 표시됩니다. 계산의 원리와 공식 해설도 같은 페이지에서 확인할 수 있습니다
  DataChef의 특징
간단하고 무료
무료로 횟수 제한 없이 변환
전문 지식 없이도 직관적이고 간단하게 사용
회원가입 불필요
접속 즉시 바로 사용 가능
개인정보를 등록하지 않고도 이용할 수 있습니다
안전하고 안심
통신을 강력하게 암호화
"다운로드"를 누르면 파일이 자동으로 삭제됩니다
빠른 속도
기다림 없는 쾌적한 표시 속도와 변환 속도
워터마크 없음
워터마크 없음
출처 표기 불필요
상업적 이용 가능
무료로 상업적 이용 가능
상업적 이용 허가 연락도 필요 없습니다