Python数据拟合实现最小二乘法的示例分析
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,今天就跟大家聊聊有关Python数据拟合实现最小二乘法的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。线性拟合这个表达式还是非常简单的
千家信息网最后更新 2025年02月01日Python数据拟合实现最小二乘法的示例分析
今天就跟大家聊聊有关Python数据拟合实现最小二乘法的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
线性拟合
这个表达式还是非常简单的。
对于有些情况,我们往往选取自然序列作为自变量,这个时候在求自变量的取值时可以用到一些初等数学的推论,对于 x ∈ [ m , n ] 的自然序列来说,有
#文件名core.pyimport numpy as npdef leastSquare(x,y): if len(x)==2: #此时x为自然序列 sx = 0.5*(x[1]-x[0]+1)*(x[1]+x[0]) ex = sx/(x[1]-x[0]+1) sx2 = ((x[1]*(x[1]+1)*(2*x[1]+1)) -(x[0]*(x[0]-1)*(2*x[0]-1)))/6 x = np.array(range(x[0],x[1]+1)) else: sx = sum(x) ex = sx/len(x) sx2 = sum(x**2) sxy = sum(x*y) ey = np.mean(y) a = (sxy-ey*sx)/(sx2-ex*sx) b = (ey*sx2-sxy*ex)/(sx2-ex*sx) return a,b
测试一下
>>> x = np.arange(25)>>> y = x*15+20+np.random.randn(len(x))*5 #randn生成正态分布噪声>>> a,b = core.leastSquare(x,y) >>> plt.scatter(x,y) #原始数据散点图>>> plt.plot(x,a*x+b) #拟合直线[ ]>>> plt.show()
得到
高阶多项式
和前面一样,约定
代码如下
#传入参数格式为np.array,n为阶数def leastSquareMulti(x,y,n): X = [np.sum(x**i) for i in range(2*n+1)] Y = np.array([[np.sum(y*x**i)] for i in range(n+1)]) S = np.array([X[i:i+n+1] for i in range(n+1)]) return np.linalg.solve(S,Y) #
经测试结果如下:
>>> x = np.arange(25)>>> y = x**3+3*x**2+2*x+12>>> import core>>> core.leastSquareMulti(x,y,3)array([[12.], #此为常数项 [ 2.], [ 3.], [ 1.]])
多自变量
对于样本
则相应地其误差方程组可表示为
指数函数
则其代码为
def expFit(x,y): y0 = y[0:-3] y1 = y[1:-2] y2 = y[2:-1] B,C = leastSquare(y2/y0,y1/y0) b1 = np.log((B-np.sqrt(B**2+4*C))/2) b2 = np.log((B+np.sqrt(B**2+4*C))/2) X = np.exp(b1-b2)*x Y = y/np.exp(b2*x) a1,a2 = leastSquare(X,Y) return a1,a2,b1,b2
看完上述内容,你们对Python数据拟合实现最小二乘法的示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
数据
内容
序列
自变量
自然
最小
乘法
示例
分析
代码
测试
原始
指数函数
函数
初等数学
参数
噪声
多项式
常数
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
危害网络安全行为向司法部门
数据库查询大小写
oracle配置数据库连接
补丁服务器和yum源
安卓音乐软件开发歌曲
上海煌耀软件开发
武汉理工图书馆的数据库打不开
用安卓平板做软件开发
南开100题三级网络技术
统计数据库的个数
服务器一开防火墙就无法远程连接
网络安全教育图片手抄报
景洪gpu云服务器价格
数据库安全性问题有哪些
如何选购云服务器
软件开发与编写程序一样吗
君达智尚网络技术有限公司地址
搜索 云服务器
数据库中学分和先修课的数据类型
质谱数据库网站
生化危机6 一直正在连接服务器
长沙工业图控系统软件开发
软件开发工程师承接网站
亚洲服务器英文版
数据库安装产品更新停止
怎么在数据库删除用友期初发票
高二网络技术应用选修课标要求
奥维互动地图基于什么软件开发
软件开发能力雷达图
dos 关闭不了数据库