[python] Matplotlib로 선형 회귀 선 그래프 그리기

선형 회귀는 데이터 포인트들 사이의 선형적인 관계를 나타내는 작업입니다. 이번 포스트에서는 Python의 Matplotlib 라이브러리를 사용하여 선형 회귀 선 그래프를 그리는 방법에 대해 알아보겠습니다.

1. 필요한 라이브러리 가져오기

먼저, Matplotlib 라이브러리를 사용하기 위해 다음과 같이 코드를 작성하여 필요한 라이브러리를 가져옵니다.

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

2. 데이터 준비하기

선형 회귀를 시각화하기 위해 데이터를 준비해야 합니다. 아래 코드는 임의로 생성한 데이터를 사용하는 예시입니다.

# 데이터 생성
np.random.seed(0)
X = np.random.rand(100, 1)
y = 2 + 3 * X + np.random.rand(100, 1)

위 코드에서 X는 입력 변수(독립 변수)이고, y는 출력 변수(종속 변수)입니다.

3. 선형 회귀 모델 학습하기

다음으로, 선형 회귀 모델을 학습하고 예측값을 얻어야 합니다. 아래 코드는 LinearRegression 클래스를 사용하여 선형 회귀 모델을 학습하는 예시입니다.

# 선형 회귀 모델 학습
model = LinearRegression()
model.fit(X, y)
y_pred = model.predict(X)

위 코드에서 model.fit(X, y)는 학습 데이터를 이용하여 선형 회귀 모델을 학습시키는 부분이고, model.predict(X)는 학습된 모델을 사용하여 예측값을 구하는 부분입니다.

4. 선형 회귀 그래프 그리기

이제 학습된 선형 회귀 모델의 선을 그래프로 그릴 수 있습니다. 아래 코드는 Matplotlib를 사용하여 선형 회귀 그래프를 그리는 예시입니다.

# 그래프 그리기
plt.scatter(X, y, color='blue')
plt.plot(X, y_pred, color='red', linewidth=2)
plt.show()

위 코드에서 plt.scatter(X, y, color='blue')는 데이터 포인트를 산점도로 나타내는 부분이고, plt.plot(X, y_pred, color='red', linewidth=2)는 학습된 모델의 예측값을 선으로 나타내는 부분입니다.

전체 코드

아래는 위의 모든 과정을 포함한 전체 코드입니다.

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# 데이터 생성
np.random.seed(0)
X = np.random.rand(100, 1)
y = 2 + 3 * X + np.random.rand(100, 1)

# 선형 회귀 모델 학습
model = LinearRegression()
model.fit(X, y)
y_pred = model.predict(X)

# 그래프 그리기
plt.scatter(X, y, color='blue')
plt.plot(X, y_pred, color='red', linewidth=2)
plt.show()

이제 위의 코드를 실행하면 선형 회귀 선이 포함된 그래프가 출력됩니다. 데이터에 따라 선형 회귀 선이 어떻게 그려지는지 확인해보세요!

참고 자료