python实现最小二乘法

  • 最小二乘法的思路
  • code

最小二乘法可以用于实现直线拟合和平面几何;我们这里使用最小二乘法实现一个平面几何

最小二乘法的思路


也可以将矩阵拆开来看

code

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3Dclass Plane_fitting:def _init__(self):self.X = []     #数据点x轴信息self.Y = []     #数据点y轴信息self.Z = []     #数据点z轴信息self.A = None   self.B = Noneself.coffe = Nonedef data_generate(self,a,b,c):self.X = np.random.uniform(-10, 10, size=100)self.Y = np.random.uniform(-10, 10, size=100)self.Z = (a * self.X + b * self.Y + c) + np.random.normal(-1, 1, size=100)def get_matA(self):self.A = np.ones((len(self.X),3))self.A[:,0] = self.Xself.A[:,1] = self.Ydef get_matB(self):self.B = np.ones((len(self.X),1))self.B = self.Zdef get_coffe(self):self.get_matA()self.get_matB()self.coffe = np.dot(np.dot(np.linalg.inv(np.dot(self.A.T,self.A)),self.A.T),self.B)print("平面拟合结果为:z = {}* x + {}* y + {}".format(self.coffe[0],self.coffe[1],self.coffe[2]))def show_res(self):fig1 = plt.figure()ax1 = fig1.add_subplot(111, projection='3d')ax1.set_xlabel("x")ax1.set_ylabel("y")ax1.set_zlabel("z")ax1.scatter(self.X,self.Y,self.Z,c='r',marker='o')x_p = np.linspace(-10, 10, 100)y_p = np.linspace(-10, 10, 100)x_p, y_p = np.meshgrid(x_p, y_p)z_p = self.coffe[0] * x_p + self.coffe[1] * y_p + self.coffe[2]ax1.plot_wireframe(x_p, y_p, z_p, rstride=10, cstride=10)plt.show()def main(self):self.data_generate(2,5,6)self.get_coffe()self.show_res()if  __name__== '__main__':PF = Plane_fitting()PF.main()

python实现最小二乘法相关推荐

  1. python最小二乘法_用python实现最小二乘法

    用python实现最小二乘法 在上计量经济学的时候老师布置作业,要用Eviews这个软件实现最小二乘法,但是这个软件突然失灵了,在excel中的数据无法粘贴,这就非常难堪.于是我转向python语言寻 ...

  2. python散点图拟合曲线-Python解决最小二乘法拟合并绘制散点图

    问题背景 最近物理老师让用Excel弄一个最小二乘法拟合然后弄出方程来求玻尔兹曼常数.无奈发现Linux上的WPS没有绘图功能无语啊O__O"-,据说绘图功能是用delphi写的,不好做跨平 ...

  3. python实现最小二乘法(转)

    概念 最小二乘法多项式曲线拟合,根据给定的m个点,并不要求这条曲线精确地经过这些点,而是曲线y=f(x)的近似曲线y= φ(x). 原理 [原理部分由个人根据互联网上的资料进行总结,希望对大家能有用] ...

  4. python实现最小二乘法的线性回归_Python中的线性回归与闭式普通最小二乘法

    我正在尝试使用python对一个包含大约50个特性的9个样本的数据集应用线性回归方法.我尝试过不同的线性回归方法,即闭式OLS(普通最小二乘法).LR(线性回归).HR(Huber回归).NNLS(非 ...

  5. Python基于最小二乘法的一元线性回归方程

    基于最小二乘法的一元线性回归方程 要求 关于房价的,只需要一个自变量一个因变量 用到最小二乘,但不是封装好的函数,有算法的具体实现 原理 最小二乘法 我们以最简单的一元线性模型来解释最小二乘法.什么是 ...

  6. Python实现最小二乘法线性回归

    研一第一学期刚学习完数值分析,赶上期末复习,复习的时候正好复习到最小二乘法,把离散的点拟合为线性函数,就顺便用python实现一下.正好准备学习机器学习算法这方面,就当是预热吧,我知道机器学习的算法肯 ...

  7. python实现最小二乘法的线性回归_最小二乘法求线性回归的python实现

    原文: 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_38003892/arti ...

  8. Python使用最小二乘法求解回归直线案例一则

    参考代码: 运行结果: 1.2 3.6 0.4 10.8 --------董付国老师Python系列教材-------- 1)<Python程序设计(第2版)>(2018年7月第7次印刷) ...

  9. Python实现最小二乘法拟合直线(求斜率截距)

    利用最小二乘法拟合直线,实现了对一系列点拟合出其最接近的直线,并给出公式,包括斜率和截距.并且绘制出最终拟合线. 完整代码如下: # 核心代码,求斜率w,截距b def fit(data_x, dat ...

最新文章

  1. 简单图文配置golang+vscode【win10/centos7+golang helloworld+解决install failed等情况】
  2. 同学我看你答题分钱总被淘汰你得充充电了!
  3. django restful 请求_利用 Django REST framework 构建 RESTful Web API
  4. 25 FI配置-财务会计-定义冲销原因
  5. 万字详解Docker架构原理、功能及使用
  6. JAVA JDK配置
  7. android 应用搬家 分区,把安装在SD卡的应用存在DATA分区的数据移到SD卡上
  8. 使用PHP的“注意:未定义的变量”,“注意:未定义的索引”和“注意:未定义的偏移量”
  9. c 提示错误expected) before ; token_NLP.TM[33] | 纠错:pycorrector的错误检测
  10. 【模拟电子技术Analog Electronics Technology 14】——集成运放中的单元电路 之 集成运放的输入级:长尾式差放各种接法的参数分析
  11. html广告代码自适应,很实用的对联广告代码(自适应高度)
  12. 香橙派上手记录(orangepi pc)
  13. 邮箱smtp服务器及端口收集
  14. APICloud初使用记录
  15. 韩国计算机专业,韩国计算机专业发展前瞻
  16. dnf服务器炸团门票怎么找回,DNF:还在为魔界裂缝门票发愁吗?这些地方可以轻松获取门票...
  17. 【DC010沙龙年度合集】顶尖Hacking技术盛宴(文末福利)
  18. CAM350导入文件时钻孔文件错误
  19. 为什么手机里的小爱音响app里搜不到家里的小爱音箱_小米随身版小爱蓝牙音箱【开箱体验】,49的小爱音箱,值了...
  20. 基于STM32驱动SG90舵机

热门文章

  1. 解决一个远程主机强迫关闭连接的bug
  2. 茄子快传和腾讯全民Wifi配合使用
  3. SCI 论文常用词汇 持续更新中。。。
  4. OCR:ECCV 2020 论文了解
  5. 《杜拉拉升职记》——值得一读的一本好书
  6. 产品设计体会(0013)产品经理应该是管理者么
  7. 针对平层住宅的分布式无线组网方案(含万兆NAS)
  8. 笔记本电脑外接显示器以后检测不到笔记本电脑原来的显示器,把hdmi拔出来了也没用
  9. The maximum number of tolerable server reconnection errors has been reached
  10. php excel导入功能