Menu
CoddyTech

상관관계는 인과관계가 아니다

Coddy Machine Learning 여정의 머신러닝을 위한 통계 섹션에 포함된 레슨. 64개 중 33번째.

r는 직선만 인식합니다. 여기서 y는 x에 의해 완전히 결정되지만, r은 0입니다:

x가 -3부터 3까지일 때 y = x 제곱인 산점도: 점들이 완벽한 U자 모양을 이루며, 제목은 r = 0.0

감소하는 절반은 증가하는 절반을 상쇄합니다. 0에 가까운 r은 직선이 없다는 뜻이지, 관계가 없다는 뜻은 아닙니다. 특성을 제거하기 전에 그래프를 그려 보세요.

그리고 멀리 떨어진 점 하나가 강한 r을 가장할 수 있으므로, 먼저 이상치를 확인하세요:

4 정도 가로, 5 정도 세로의 느슨한 덩어리 안에 있는 파란 점 8개는 r = -0.27이며, 20과 25에 멀리 떨어진 빨간 점 하나가 있습니다. 이 점을 포함하면 r은 0.95로 급등합니다

마지막으로, r은 결코 인과관계를 입증하지 않습니다. 나이가 많은 아이들은 신발이 더 크고 글도 더 잘 읽습니다. 두 가지 모두를 좌우하는 것은 숨겨진 제3의 변수인 나이입니다.

challenge icon

챌린지

중급

찻집에서 찻잔을 테스트합니다. 9개의 찻잔에 대한 steep과 taste(우린 시간(분), 점수), 다른 10개의 찻잔에 대한 sugar와 score(각설탕 개수, 점수)를 사용합니다. 프로그램은 추가 찻잔의 각설탕 개수를 입력받은 다음 점수를 입력받습니다.

  1. steep과 taste의 r을 출력합니다.
  2. sugar와 score의 r을 출력한 다음, 추가 찻잔을 더했을 때의 값을 출력합니다.

아래와 같이 표시하고 소수점 2자리까지 반올림합니다. 다른 찻집의 추가 찻잔이 10, 2.0인 경우:

Steeping r: -0.05
Sugar r: -0.23
Sugar r with the extra cup: -0.88

직접 해보기

import numpy as np

# 차 9잔의 우리는 시간(분)과 맛 점수
steep = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
taste = np.array([3.1, 5.0, 6.6, 7.7, 8.1, 7.6, 6.5, 5.1, 3.4])

# 다른 차 10잔의 각설탕 개수와 맛 점수
sugar = np.array([0, 2, 1, 3, 0, 2, 1, 3, 2, 1])
score = np.array([6.5, 5.8, 7.4, 6.1, 5.9, 7.0, 6.2, 6.8, 6.4, 5.7])

# 추가 차 한 잔
extra_sugar = float(input())
extra_score = float(input())

# 아래에 코드를 작성하세요
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

머신러닝을 위한 통계의 모든 레슨

직접 연습해 보세요: 온라인 Python 컴파일러