使用线性回归拟合平面最佳直线及预测之Python+sklearn实现
2017-09-25 00:00
471 查看
本文代码采用sklearn扩展库实现,使用线性回归算法解决下面的问题:根据平面上已知3个点的坐标,拟合最佳直线斜率k和截距b,然后根据拟合的结果对给出的x坐标进行预测,得到y坐标。from sklearn import linear_model
def linearRegressionPredict(x, y):
lr = linear_model.LinearRegression()
# 拟合
lr.fit(x, y)
return lr
# 平面上三个点的x轴坐标
x = [[1], [5], [7]]
# 平面上三个点的y轴坐标
y = [[3], [100], [120]]
# 根据已知3个点拟合最佳直线的系数和截距
lr = linearRegressionPredict(x, y)
# 查看最佳拟合系数
print('k:', lr.coef_)
# 截距
print('b:', lr.intercept_)
# 测试代码,预测
xs = [[[3]], [[5]], [[7]], [[10]]]
for item in xs:
print(item, ':', lr.predict(item))
运行结果:k: [[ 20.17857143]]
b: [-13.10714286]
[[3]] : [[ 47.42857143]]
[[5]] : [[ 87.78571429]]
[[7]] : [[ 128.14285714]]
[[10]] : [[ 188.67857143]]
----------喜大普奔----------
1、继《Python程序设计基础》《Python程序设计(第2版)》《Python可以这样学》系列图书之后,董付国老师新书《Python程序设计开发宝典》已于2017年8月1日在清华大学出版社出版。为庆祝新书《Python程序设计开发宝典》全面上架,清华大学出版社联合“赣江图书专营”淘宝店推出特价优惠活动,《Python程序设计开发宝典》原价69元,新书上架期间超低价39.8元,可以复制下面的链接使用浏览器打开查看图书详情和购买:https://detail.tmall.com/item.htm?spm=a1z10.3-b-s.w4011-14464369246.84.46f16db0roWfX4&id=557107249812&rn=339cbc9df2bac424664103917dedfbd2&abbucket=8&tbpm=3
2、10月13日——15日,重庆,全国高校程序设计系列课程高级研究班,详见:全国高校程序设计系列课程高级研修班(Python)通知
def linearRegressionPredict(x, y):
lr = linear_model.LinearRegression()
# 拟合
lr.fit(x, y)
return lr
# 平面上三个点的x轴坐标
x = [[1], [5], [7]]
# 平面上三个点的y轴坐标
y = [[3], [100], [120]]
# 根据已知3个点拟合最佳直线的系数和截距
lr = linearRegressionPredict(x, y)
# 查看最佳拟合系数
print('k:', lr.coef_)
# 截距
print('b:', lr.intercept_)
# 测试代码,预测
xs = [[[3]], [[5]], [[7]], [[10]]]
for item in xs:
print(item, ':', lr.predict(item))
运行结果:k: [[ 20.17857143]]
b: [-13.10714286]
[[3]] : [[ 47.42857143]]
[[5]] : [[ 87.78571429]]
[[7]] : [[ 128.14285714]]
[[10]] : [[ 188.67857143]]
----------喜大普奔----------
1、继《Python程序设计基础》《Python程序设计(第2版)》《Python可以这样学》系列图书之后,董付国老师新书《Python程序设计开发宝典》已于2017年8月1日在清华大学出版社出版。为庆祝新书《Python程序设计开发宝典》全面上架,清华大学出版社联合“赣江图书专营”淘宝店推出特价优惠活动,《Python程序设计开发宝典》原价69元,新书上架期间超低价39.8元,可以复制下面的链接使用浏览器打开查看图书详情和购买:https://detail.tmall.com/item.htm?spm=a1z10.3-b-s.w4011-14464369246.84.46f16db0roWfX4&id=557107249812&rn=339cbc9df2bac424664103917dedfbd2&abbucket=8&tbpm=3
2、10月13日——15日,重庆,全国高校程序设计系列课程高级研究班,详见:全国高校程序设计系列课程高级研修班(Python)通知
相关文章推荐
- 使用线性回归拟合平面最佳直线及预测之Python+sklearn实现
- Python使用线性回归简单预测数据
- 回归:最佳拟合直线与局部线性回归
- Matlab实现线性回归(直线拟合)
- 使用VC内嵌Python实现的一个代码检测工具
- 实现曲线的光滑拟合,多次趋近直线
- 最小二乘法拟合直线公式推导及vc实现[转]
- (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
- 使用某个文件夹下的所有文件去替换另一个文件夹下及其子文件夹下存在的同名文件(Python实现)
- 使用自制CtlPointsCurve.dll组件实现样条曲线拟合
- 用Python 实现刷钻网上抢任务,并实现一个简单的限制使用时间的功能
- 使用Python实现RC4算法
- 在python中可以使用urllib方便的实现图片和flash下载
- 使用python和redis实现实时聊天室
- SPSS Clementines 预测分析模型----啤酒+尿片故事的实现机理(使用11版本实现)
- 用Python实现简单的HTTP服务器(1)--使用Firebug简单分析HTTP协议
- VC中实现最小二乘法 直线拟合 Y=a0+a1X 以及 Y=aX
- 使用SWIG实现C++导出python接口的配置
- 近期准备写一系列关于使用python实现常用算法的文章
- 最小二乘法拟合直线公式推导及vc实现[转]