专栏首页matlab爱好者matlab插值拟合(二)

matlab插值拟合(二)

上一篇给大家介绍了如何使用matlab拟合工具箱进行函数的插值拟合,今天介绍matlab中常用的拟合函数:polyfitfittype

1 基于最小二乘法的多项式拟合函数:polyfit

p = polyfit(x,y,n),待拟合的多项式为p(1)*x^n + p(2)*x^(n-1) +…+ p(n)*x + p(n+1),其中x是拟合数据的自变量,y是因变量,n是拟合多项式的阶数,如当n为1时,即为一次线性拟合。

例1

x = -10:0.2:10;
y = 1.25*x.^2 + 0.38*x+2;
len = length(x);
yy = y + 2*(rand(1,len)-0.5);
plot(x,yy,'.')
% 拟合得到系数
p = polyfit(x,yy,2);
% 求出拟合值
yfit = p(1)*x.^2 + p(2)*x+p(3);
hold on
plot(x,yfit,'r');
hold off
legend('原始数据','拟合值');

2 多项式拟合求值函数:polyval

y = polyval(p,x),p为采用polyfit求出的拟合系数,x为自变值,可以为单个值也可以为数组。使用该函数可以省去例1中列出表达式原型。

例2

x = -10:0.2:10;
y = 1.25*x.^2 + 0.38*x+2;
len = length(x);
yy = y + 2*(rand(1,len)-0.5);
plot(x,yy,'.')
% 拟合得到系数
p = polyfit(x,yy,2);
% 求出拟合值
yfit = polyval(p,x);
hold on
plot(x,yfit,'r');
hold off
legend('原始数据','拟合值');

3 自定义类型拟合函数:fittype

使用fittype函数可以自定义拟合函数,可以满足线性拟合和非线性拟合。调用格式如下:

aFittype = fittype(libraryModelName),其中,libraryModelName为内置库模型名称,如:

aFittype = fittype(expression),其中,expression为自定表达式,这也是最常用到的,如:

例3

x = -10:0.2:10;
y = 1.25*x.^3 + 0.38*x.^2 + 2*x + 4;
len = length(x);
yy = y + 30*(rand(1,len)-0.5);
plot(x,yy,'.')
% 定义三次曲线拟合
p = fittype('poly3');
% 获取拟合函数
yfit = fit(x',yy',p);
hold on
% 计算并绘图
plot(x,yfit(x),'r');
hold off
legend('原始数据','拟合值');

温馨提示

如果你喜欢本文,请分享朋友圈,想要获得更多信息,请持续关注我。

本文分享自微信公众号 - matlab爱好者(matlabaihaozhe),作者:bashan

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • matlab插值拟合(一)

    感谢大家关注matlab爱好者公众号,今天给大家介绍matlab插值拟合。在聊天栏中输入“023”、“拟合”、“插值”或 “工具箱”即可快速获取本视频。通过访问...

    艾木樨
  • 如何做PDF文件的导航书签?

    PDF文档是大家日常工作中常用的文件,其英文名称为Portable Document Format (PDF),即便携文件格式,它具有可跨平台使用,易于传输与储...

    艾木樨
  • 【资源】这可能是东半球最全的Linux资料

    很多Matlab的使用者,很多是科研工作者或者涉及理工知识行业的从业者, 在学习工作过程中经常会涉及到一些矩阵运算或线性代数等内容。那与这些部分相辅相成不可分割...

    艾木樨
  • TensorFlow-拟合

    过度拟合的解决方法 减少数据 平滑曲线等 数据越多有时候不是一件好事对于机器学习来说

    98k
  • 机器学习系列9:正则化

    在线性回归问题中,像下面这个数据集,通过房屋面积去预测房价,我们用一次函数去拟合数据:

    SuperFeng
  • 【原理】机器学习欠拟合与过拟合

    小编邀请您,先思考: 1 什么是欠拟合? 2 什么是过拟合? 在数据科学学科中, 过度拟合(overfit)模型被解释为一个从训练集(training set)...

    陆勤_数据人网
  • 机器学习应用量化投资:『过拟合』终极解决方案!

    近年来,基金经理已开始用基于计算机的统计方法(例如ML)代替或补充经典的统计方法(例如计量经济学)。知名的ML公司包括RenTec,Two Sigma,DE S...

    量化投资与机器学习微信公众号
  • 机器学习(3) -- 贝叶斯及正则化

    Content 3. Bayesian statistics and Regularization.     3.1 Underfitting and ov...

    昱良
  • Stanford机器学习笔记-3.Bayesian statistics and Regularization

    3. Bayesian statistics and Regularization Content   3. Bayesian statistics and R...

    llhthinker
  • 第十一章 应用机器学习的建议

    ?的方法,一般都是需要花费比较长的时间(如,6个月)才能看到改正后的效果到底是好的,还是坏的。也就是,你选择的方法是对,的还是错的。

    tomas家的小拨浪鼓

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动