더북(TheBook)
# numpy를 임포트한다
import numpy as np

# x 값과 y 값
x = np.array( [ 1, 2, 3 ] )
y = np.array( [ 3, 5, 7 ] )

# numpy의 mean 함수를 사용해 x와 y의 평균값을 구한다
mx = np.mean( x )
my = np.mean( y )

# 기울기(W) 공식의 분모 부분을 계산한다
divisor = sum( [ ( mx - i )**2 for i in x ] )

# 기울기(W) 공식의 분자 부분을 계산한다
d = 0
for i in range( len(x) ):
    d += ( x[i] - mx ) * ( y[i] - my )
dividend = d

참고

기울기(W) 공식의 분자 부분은 다음과 같이 한 줄로 바꿀 수 있다.

dividend = sum( [ (xi-mx)*(yi-my) for xi, yi in zip(x, y) ] )
# 기울기 W와 절편 b를 계산한다
W = dividend / divisor
b = my - (mx*W)

# 기울기와 절편을 출력한다
print( "기울기 W =", W )
print( "절편 b =", b )

간단한 프로그램이므로 결과는 직접 확인해보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.