波士顿房价处理

1. 导入boston房价数据集

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

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

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

 1 from sklearn.datasets import load_boston
 2 import matplotlib.pyplot as plt
 3 from sklearn.linear_model import LinearRegression
 4 from sklearn.preprocessing import PolynomialFeatures
 5 
 6 def yiyuan(data,x,y):
 7     '''一元模型并画图'''
 8     plt.scatter(x, y)
 9     plt.plot(x, 9 * x - 30)
10     plt.show()
11 
12 def duoyuan(data,x,y):
13     LineR = LinearRegression()
14     LineR.fit(x.reshape(-1, 1), y)
15     lr = LinearRegression()
16     lr.fit(data, y)
17     lr.coef_  #斜率
18     w = lr.coef_
19     lr.intercept_#截距
20     b = lr.intercept_
21     y_pred = LineR.predict(x)
22     return y_pred
23 
24 
25 def duoxiangsi():
26     poly = PolynomialFeatures(degree=2)
27     x_poly = poly.fit_transform(x)
28     lp = LinearRegression()  # G构建模型
29     lp.fit(x_poly, y)
30     y_poly_pred = lp.predict(x_poly)
31 
32     plt.scatter(x, y)
33     plt.plot(x, y_poly_pred, 'r')
34     plt.show()
35 
36     lrp = LinearRegression()
37     lrp.fit(x_poly, y)
38     plt.scatter(x, y)
39     plt.scatter(x, y_pred)
40     plt.scatter(x, y_poly_pred)  # 多项回归
41     plt.show()
42 
43 
44 
45 
46 
47 
48 if __name__ == '__main__':
49     boston = load_boston()
50     boston.keys()
51     data = boston.data
52     x = data[:, 5]
53     y = boston.target
54     y_pred = yiyuan(boston,x,y)
55     duoxiangsi()

猜你喜欢

转载自www.cnblogs.com/smallgrass/p/10122665.html