回归模型与房价预测

1. 导入boston房价数据集,并查看数据特征

from sklearn.datasets import load_boston   #导入波士顿房价数据

boston = load_boston()
boston.keys()

print(boston.DESCR)

boston.data.shape  #数据集大小

boston.feature_names   #数据集特征

boston.target  

import pandas as pd
df = pd.DataFrame(boston.data)  #将数据转化为数据框
df

运行结果:

1)

2)

 

 3)

 

 2. 一元线性回归模型,建立一个变量与房价之间的预测模型,并图形化显示

import matplotlib.pyplot as plt   #一元线性回归模型
x = boston.data[:,5]
y = boston.target
plt.figure(figsize=(10,6))
plt.scatter(x,y)
plt.plot(x,5*x-5,'r')
plt.show()
x.shape

运行结果:

 

3. 多元线性回归模型,建立13个变量与房价之间的预测模型,并检测模型好坏,并图形化显示检查结果

from sklearn.linear_model import LinearRegression  #多元线性回归模型
lineR =  LinearRegression()   #构造回归对象
lineR.fit(boston.data,y)
w = lineR.coef_   #斜率
w
b = lineR.intercept_   #截距
b
import matplotlib.pyplot as plt   #一元多项式回归模型
x = boston.data[:,12].reshape(-1,1)
y = boston.target
plt.figure(figsize=(10,6))
plt.scatter(x,y)
from sklearn.linear_model import LinearRegression
lineR = LinearRegression()
lineR.fit(x,y)
y_pred = lineR.predict(x)
plt.plot(x,y_pred)
print(lineR.coef_,lineR.intercept_)
plt.show()

运行结果:

1)

2)

 

 4.  一元多项式回归模型,建立一个变量与房价之间的预测模型,并图形化显示

from sklearn.preprocessing import PolynomialFeatures  #多项式特征,用于多项式核函数核方法
poly = PolynomialFeatures(degree=2)
x_poly = poly.fit_transform(x)
lrp = LinearRegression()
lrp.fit(x_poly,y)
y_poly_pred = lrp.predict(x_poly)
plt.scatter(x,y)
plt.scatter(x,y_pred)
plt.scatter(x,y_poly_pred)
plt.show()

运行结果:

 

 

 

posted @ 2018-12-09 15:23  MISTanglijuan  阅读(436)  评论(0编辑  收藏  举报