最小二乘法--基于matlab实现

理解最小二乘法,你只需要这两张ppt+两个链接:
在这里插入图片描述

在这里插入图片描述

https://zhuanlan.zhihu.com/p/99924603?utm_source=qq

https://blog.csdn.net/hudaJY/article/details/84404703

clc,clear,close all;
x = [0.5,1,1.5,2.0,2.5,3.0];
y = [1.75,2.45,3.81,4.80,7.00,8.60];
a1 = polyfit(x,y,1);    % n=1 的 一次拟合
a2 = polyfit(x,y,2);    % 二次拟合
a3 = polyfit(x,y,3);    % 三次拟合
%  a: 返回的是拟合曲线的系数的降幂排列
 
x1 = [0.5:0.05:3.0];    % 拟合曲线的 x 的取值
y1 = a1(1)*x1 + a1(2);  % 一次多项式
y2 = a2(1).*x1.*x1 + a2(2)*x1 + a2(3);   %二次多项式
y3 = a3(1).*x1.*x1.*x1 + a3(2).*x1.*x1 + a3(3)*x1 + a3(4);  %三次多项式
% 根据返回的系数 a 得到拟合曲线 y1 y2 y3
 
figure(1)
plot(x,y,'*');
hold on; 
plot(x1,y1,'b--',x1,y2,'k',x1,y3,'ro-');
legend('原始数据','一次拟合','二次拟合','三次拟合');

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值