详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程

一、导入excel文件和相关库

import pandas;
import matplotlib;
from pandas.tools.plotting import scatter_matrix;
 
data = pandas.read_csv("D:\\面积距离车站.csv",engine='python',encoding='utf-8')

显示文件大小

data.shape

data

详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程_第1张图片

二.绘制多个变量两两之间的散点图:scatter_matrix()方法

#绘制多个变量两两之间的散点图:scatter_matrix()方法
font = {
  'family' : 'SimHei'
}

matplotlib.rc('font', **font)
scatter_matrix(
  data[["area","distance", "money"]], 
  figsize=(10, 10), diagonal='kde'
)  #diagonal参数表示变量与变量本身之间的绘图方式,kde代表直方图
#求相关系数矩阵
data[["area", "distance", "money"]].corr()

x = data[["area", "distance"]]
y = data[["money"]]

详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程_第2张图片

三、导入sklearn

from sklearn.linear_model import LinearRegression

#建模
lrModel = LinearRegression()

#训练模型
lrModel.fit(x, y)

#评分
R2=lrModel.score(x, y)
print("R的平方:",R2)

#预测
lrModel.predict([[10, 110],[20, 110]])

#查看参数
lrModel.coef_

#查看截距
lrModel.intercept_

结果如下:

详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程_第3张图片

回归方程为:y=41.51x1-0.34x2+65.32

四、python全部代码

import pandas;
import matplotlib;
from pandas.tools.plotting import scatter_matrix;

data.shape

#绘制多个变量两两之间的散点图:scatter_matrix()方法
font = {
  'family' : 'SimHei'
}

matplotlib.rc('font', **font)
scatter_matrix(
  data[["area","distance", "money"]], 
  figsize=(10, 10), diagonal='kde'
)  #diagonal参数表示变量与变量本身之间的绘图方式,kde代表直方图
#求相关系数矩阵
data[["area", "distance", "money"]].corr()

x = data[["area", "distance"]]
y = data[["money"]]

from sklearn.linear_model import LinearRegression

#建模
lrModel = LinearRegression()

#训练模型
lrModel.fit(x, y)

#评分
R2=lrModel.score(x, y)
print("R的平方:",R2)

#预测
lrModel.predict([[10, 110],[20, 110]])

#查看参数
lrModel.coef_

#查看截距
lrModel.intercept_

到此这篇关于详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程的文章就介绍到这了,更多相关Jupyter notebooks sklearn多元回归方程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程)