1. 最小二乘法拟合概述

    1. 算法原理

设是定义在点集上的列表函数,构造广义多项式

使得最小,其中为待定参数, 是已知的一组基函数,通过求解正规方程组来确定c的方法称为最小二乘拟合。

  1. 伪代码

1)给定待拟合量x,y;

2)for i=1,…,n do

for i=1,…,n do

A(i,j)=( x.^(i-1) , x.^(j-1) )

end do

b(i)=(x.^(i-1),y)

end do

3)

  1. 程序使用说明

源代码见本文最后章,使用时需要给定待拟合数组横坐标x、纵坐标y、多项式拟合次数加一值n,即可进行计算。

输出结果分为两部分:

最终解部分会在matlab命令行窗口中给出

实际值和拟合值的关系曲线会在figure窗口中给出

  1. 具体算例及计算结果

    1. 具体算例

给定数据如下表所示,求其最小二乘拟合四次多项式及其误差:

  1. 计算结果

可以发现最终的拟合多项式为四次多项式,且误差最大值仅为0.0003相对误差小于0.006%

有实际值与拟合值的对比曲线可以发现,几乎每个实际值都落于拟合值曲线上,且曲线整体平滑,拟合效果较好。

源代码

%%----------------------------%%
%%----列表函数的最小二乘拟合----%%
%%------Acyeah-2021/11/11-----%%
%%------------多项式-----------%%
clear;clc;close all;hold on;
%%输入
x=[0.1      0.2     0.3     0.4     0.5     0.6     0.7     0.8     0.9     ];%拟合点的横坐标
y=[5.1234   5.3057  5.5687  5.9375  6.4370  7.0978  7.9493  9.0253  10.3627 ];%拟合点的纵坐标
n=5;%多项式拟合次数+1
%%初始化
A=zeros(n,n);%正规方程组 Ac=b 
b=zeros(n,1);
c=zeros(n,1);
error=zeros(1,length(x));
i=0;%行计数器
j=0;%列计数器
x_plot=( min(x)-((max(x)-min(x))/10) ):((max(x)-min(x))/10/length(x)):max(x)+((max(x)-min(x))/10);%拟合曲线x
y_plot=0;%拟合曲线y
%%计算
for i=1:n
    for j=1:n
       A(i,j)=dot(x.^(i-1) , x.^(j-1)); 
    end
    b(i,1)=dot(x.^(i-1),y);
end
c=inv(A)*b;
%%输出
fprintf('拟合多项式为:\ny = %6.4f ',c(1))%输出多项式
for i=2:n
fprintf('+ %6.4f*x^%2.0f   ',c(i),i-1)
end
fprintf('\n\n')

for i=1:n %输出拟合曲线和对应点处误差
    y_plot=y_plot+c(i)*x_plot.^(i-1);
    error=error+c(i)*x.^(i-1);
end
error=error-y;
errormax=max(abs(error));
fprintf('各点处误差绝对值最大值为:\n = %6.4f \n\n',errormax)
plot(x,y,'r*')
plot(x_plot,y_plot)
legend('实际值','拟合值');

列表函数的最小二乘拟合(matlab)相关推荐

  1. 使用matlab对sinc函数进行最小二乘拟合仿真

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 该函数用于得到sinc函数偏移特定位置时的函数值,用于仿真 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ...

  2. python非线性最小二乘拟合_非线性函数的最小二乘拟合——兼论Jupyter notebook中使用公式 [原创]...

    突然有个想法,利用机器学习的基本方法--线性回归方法,来学习一阶rc电路的阶跃响应,从而得到rc电路的结构特征--时间常数τ(即r*c).回答无疑是肯定的,但问题是怎样通过最小二乘法.正规方程,以更多 ...

  3. 最小二乘拟合 matlab 初值的选取,最小二乘拟合法

    相位噪声函数的非线性最小二乘曲线拟合 摘要:相位噪声是对频率源频率稳定性的表示,对其幂律谱函数进行拟合,在仿真中非常重要,首先介绍线性最小二乘曲线拟合及非线性最小二乘曲线拟合的原理,然后结 合非线性最 ...

  4. matlab 中最小二乘拟合,matlab 最小二乘拟合

    matlab 最小二乘拟合 2018-1-25来自ip:12.12.148.103的网友咨询 浏览量:157 问题补充: matlab 最小二乘拟合 这是m文件 function y=nihe4(p, ...

  5. 多项式在matlab中的应用,matlab的应用-多项式函数及多项式拟合

    matlab的应用-多项式函数及多项式拟合 Matlab 的应用- 多项式函数及多项式拟合 本节将向大家简要介绍 matlab 在多项式处理方面的应用. 多项式函数主要有: roots 求多项式的根 ...

  6. 非线性回归——非线性函数最小二乘拟合

    非线性回归--非线性函数的最小二乘拟合 非线性回归 1.1 可转为线性回归 1.2 非线性回归 1.2.1 高斯一牛顿法 1.2.2 转为最优化问题处理 非线性回归 1.1 可转为线性回归 上一篇文章 ...

  7. 最小二乘多项式拟合程序matlab,最小二乘法的多项式拟合(matlab实现)

    1.用最小二乘法进行多项式拟合(matlab实现)西安交通大学 徐彬华算法分析:对给定数据 (i=0 ,1,2,3,.,m),一共m+1个数据点,取多项式P(x),使函数P(x)称为拟合函数或最小二乘 ...

  8. 基于粒子群算法与最小二乘拟合函数参数

    前言 今天更新较晚主要还是学业繁忙,学习素材也不是很好找,可能很多同学们都在做数学建模以及应用统计时都会涉及到函数参数拟合的问题,一般最常用的方法是最小二乘法,但是当函数参数很多时,往往去普通最小二乘 ...

  9. 数学建模 拟合(最小二乘拟合,多项式拟合,自定义函数拟合)

    文章目录 matlab拟合工具箱 最小二乘拟合 理论推导 用最小二乘法求解线性回归的k,b 怎么评价拟合的精度 一个例子 另一个例子,薄膜渗透率题目,最小二乘拟合溶液浓度变化 多项式拟合 自定义函数拟 ...

最新文章

  1. 关于MSSQL导入导出时主键与约束丢失的问题解决
  2. MySQL 如何创建索引?怎么优化?
  3. 数据3分钟丨​俄罗斯金融监控局4.6亿卢布招标国产数据库;Meta被欧盟罚款1900万美元;达观数据和天云数据分获数亿元融资...
  4. 【干货分享】12个思维模型扑克牌.pdf(附下载链接)
  5. 操作系统知识回顾(5)-内存管理
  6. How to increase sales, in addition to manufacturing different phones
  7. C# 解析 Json数据
  8. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_14-webpack研究-webpack-dev-server...
  9. 2022保密教育线上培训考试 01
  10. 【游戏设计模式】之一 序言:架构,性能与游戏
  11. android 面试题(史上最全)
  12. 流行QQ在线客服代码
  13. 电路设计_光耦的主要参数
  14. 听说现在美女都流行吃“脏东西”了,有钱都不一定买得到...丨钛空舱
  15. matlab常用工具箱汇总(附toolbox下载地址)
  16. Python super细节整理
  17. BUUCTF [强网杯 2019]随便注
  18. 硬核来袭!!!一篇文章教你入门Python爬虫网页解析神器——BeautifulSoup详细讲解
  19. 清理win7系统C盘的方法
  20. 初识 Box2D世界

热门文章

  1. 我的专业我的梦作文计算机,我的学校我的梦作文
  2. 京东金融Vue组件化项目实战(目前最新)
  3. LED圣诞灯饰出口欧洲CE认证检测项目标准
  4. java 编程动感相册_抖音3D立体动态相册实现代码下载
  5. 罗胖做的还是知识服务吗?
  6. 在报表工具中创建交互式图表教程
  7. 计算机网络学习笔记(三)——数据链路层
  8. 移动端深度学习开源框架及部署
  9. 【调剂】上海工程技术大学-材料工程学院-焊接专业-硕士调剂
  10. 网站开发中的常用词语中英文对照表