Python은 강력한 과학적 컴퓨팅 및 데이터 처리 기능으로 인해 데이터 분석 및 기계 학습 분야에서 널리 사용되는 매우 인기 있는 프로그래밍 언어입니다. 이 기사에서는 데이터 모델링 및 예측을 위해 Python에서 일변량 선형 회귀를 사용하는 방법을 소개하고 예제를 통해 실제 적용을 보여줍니다.
먼저 선형회귀란 무엇일까요? 통계 및 기계 학습에서 선형 회귀는 두 변수 간의 관계를 설정하는 데 사용되는 방법입니다. 일변량 선형 회귀 분석에는 하나의 설명 변수(독립 변수)와 하나의 응답 변수(종속 변수)만 있습니다.
다음으로 Python에서 scikit-learn 라이브러리를 사용하여 일변량 선형 회귀를 구현하는 방법을 소개하겠습니다. scikit-learn은 데이터 모델링 및 시각화를 위한 다양한 도구가 포함된 인기 있는 기계 학습 라이브러리입니다.
1단계: 라이브러리 및 데이터 가져오기
먼저 일부 라이브러리를 가져와야 합니다. 이 기사에서는 NumPy, Pandas, Matplotlib 및 Scikit-learn을 사용합니다.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
다음으로 분석할 데이터를 준비해야 합니다. 이 예에서는 매우 간단한 데이터 세트인 주택 크기 및 가격에 대한 데이터 세트를 사용합니다.
df = pd.DataFrame({'Area': [1400, 1600, 1700, 1875, 1100, 1550, 2350, 2450, 1425, 1700],
'价格': [245000, 312000, 279000, 308000, 199000, 219000, 405000, 324000, 319000, 255000]})
print(df)
출력은 다음과 같습니다.
面积 价格
0 1400 245000
1 1600 312000
2 1700 279000
3 1875 308000
4 1100 199000
5 1550 219000
6 2350 40 5000
7 2450 324000
8 1425 319000
9 1700 255000
2단계 : 데이터 분석 및 시각화
데이터를 가져온 후에는 몇 가지 데이터 분석 및 시각화를 시작할 수 있습니다. 가로 축은 집의 면적이고 세로 축은 매출입니다.
plt.scatter(df['Area' ], df['price'])
plt.xlabel('area')
plt.ylabel('price')
plt.show()
출력:
이 산점도는 주택 면적이 증가함에 따라 판매 가격도 증가함을 나타냅니다. 따라서 이 두 변수 사이에 선형 관계가 있을 수 있습니다.
3단계: 선형 회귀 모델 적합
이제 시작할 수 있습니다. scikit-learn에서 선형 회귀 모델을 피팅하려면 LinearRegression() 함수를 사용해야 합니다.
X = df[['area']]
Y = df['price']
model = LinearRegression ().fit(X, Y)
여기서 독립 변수 model.coef_)
print('Intercept:', model.intercept_)
Output:
Slope: [126.88610769]
에 면적을 할당합니다. 절편: 36646.35077294225
4단계: 시각화 결과
y_pred = model.predict([[2000]])
print('예상 판매가:' , y_pred)
plt.scatter(df['area'], df['price'] )
plt.plot(df['area'], model.predict(df[['area'] ]), color='r')
출력:
볼 수 있듯이 회귀선은 데이터 지점에 적합하며 적합 모델을 사용하여 새 주택 지역의 판매 가격을 예측할 수 있습니다.
위 내용은 Python의 일변량 선형 회귀 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!