# 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 )
간단한 프로그램이므로 결과는 직접 확인해보자.