# 1)导入工具包
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
from sklearn.metrics import mean_squared_error
# 2)加载数据
data = pd.read_csv('./input/BostonHousingData.csv')
y=data['target']
x=data.copy().drop(['target'],axis=1)
# 3)训练集-测试集划分,比例为70%(训练)--30%(测试)
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.3)
# 4)模型构建与拟合
#lr.fit:训练一个线性数据模型
#lr.predict():利用训练好的线性模型进行预测
#lr.score():返回线性模型的决定系数R^2
#可以通过lr.coef_和lr.intercept_获取回归系数和截距。
lr=LinearRegression()
lr.fit(x_train,y_train)
# 5)模型预测与评价
y_pred=lr.predict(x_test)
print(r2_score(y_test,y_pred))
print(mean_squared_error(y_test,y_pred))
#均方误差
0.7444899581399256
18.625864118657248