인간의 키와 몸무게는 어느 정도 비례할 것으로 예상된다.
아래와 같은 데이터가 있을 때, 선형 회귀를 이용하여 키가 165cm일 때 에측값을 얻어보자.
| 키 | 몸무게 |
|---|---|
| 174 | 71 |
| 152 | 55 |
| 138 | 46 |
| 128 | 38 |
| 186 | 88 |
from sklearn import linear_model
import matplotlib.pylab as plt
import numpy as np
X = np.array([[174], [152], [138], [128], [186]])
y = np.array([71, 55, 46, 38, 88])
model = linear_model.LinearRegression()
model.fit(X,y)
y_pred = model.predict(X)
pred = model.predict([[165]])
print(pred)
plt.scatter(X, y, color = 'blue') # 실제 값
plt.plot(X, y_pred, color = 'red') # 예측함수
plt.scatter([165],[pred], color = 'black')
plt.show()

해당 코드를 분석해보면 아래와 같다.
y_pred 배열에 담기실제 값들은 파랑색으로 scatter(점)으로 Plot에 표현선형 회귀 모델은 빨강색으로 plot(직선)으로 Plot에 표현165에 해당하는 예측값은 검정색 scatter(점)으로 Plot에 표현그 결과 아래와 같이 약 67kg일 것이라는 예측값을 보였다.
