더북(TheBook)

이제 최소 제곱근 공식으로 기울기 a의 값과 y 절편 b의 값을 구해 보겠습니다.

x의 모든 원소 평균을 구하는 넘파이 함수는 mean()입니다. mx 변수에는 x 원소들의 평균값을, my 변수에는 y 원소들의 평균값을 넣습니다.

mx = np.mean(x)
my = np.mean(y)

이제 앞서 살펴본 최소 제곱근 공식 중 분모 값, 즉 ‘x의 각 원소와 x의 평균값들의 차를 제곱하라’는 파이썬 명령을 만들 차례입니다. 다음과 같이 divisor라는 변수를 만들어 구현할 수 있습니다.

divisor = sum([(i - mx)**2 for i in x])

 

sum( )은 ∑에 해당하는 함수입니다.

제곱을 구하라는 의미입니다.

x의 각 원소를 한 번씩 i 자리에 대입하라는 의미입니다.

이제 분자에 해당하는 부분을 구하겠습니다. xy의 편차를 곱해서 합한 값을 구하면 됩니다. 다음과 같이 새로운 함수를 정의해서 dividend 변수에 분자 값을 저장합니다.

def top(x, mx, y, my):
    d = 0
    for i in range(len(x)):
        d += (x[i] - mx) * (y[i] - my)
    return d
dividend = top(x, mx, y, my)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.