matlab 曲线拟合

本文详细介绍了在MATLAB中进行曲线拟合的方法,包括线性拟合、多项式曲线拟合、多项式求值、多项式曲线拟合的评价和置信区间计算等,结合实例展示了不同阶数拟合的效果,以及稳健回归和自定义函数拟合的应用。
摘要由CSDN通过智能技术生成

曲线拟合(转载:http://blog.sina.com.cn/s/blog_8e1548b80101c9iu.html)

补:拟合多项式输出为str

  1.poly2str([p],'x')

  2.

    fn=sprintf('%.16f%s%.16f%s%.16f%s%.16f',p(1),'*x^3+',p(2),'*x^2+',p(3),'*x+',p(4));
    vpa(fn,精度)

补2:字符串拼接

  1.STR=sprintf('%d%s.....',对应类型的值,对应类型的值);

  2.strcat('',''..............)

实例:温度曲线问题

气象部门观测到一天某些时刻的温度变化数据为:

t

0

1

2

3

4

5

6

7

8

9

10

T

13

15

17

14

16

19

26

24

26

27

29

试描绘出温度变化曲线。

曲线拟合就是计算出两组数据之间的一种函数关系,由此可描绘其变化曲线及估计非采集数据对应的变量信息。

曲线拟合有多种方式,下面是一元函数采用最小二乘法对给定数据进行多项式曲线拟合,最后给出拟合的多项式系数。

1.线性拟合函数:regress()

调用格式:  b=regress(y,X)

                     [b,bint,r,rint,stats]= regress(y,X)

                     [b,bint,r,rint,stats]= regress(y,X,alpha)

说明:b=regress(y,X)返回X与y的最小二乘拟合值,及线性模型的参数值β、ε。该函数求解线性模型:

y=Xβ+ε

β是p´1的参数向量;ε是服从标准正态分布的随机干扰的n´1的向量;y为n´1的向量;X为n´p矩阵。

bint返回β的95%的置信区间。r中为形状残差,rint中返回每一个残差的95%置信区间。Stats向量包含R2统计量、回归的F值和p值。

例1:设y的值为给定的x的线性函数加服从标准正态分布的随机干扰值得到。即y=10+x+ε ;求线性拟合方程系数。

程序: x=[ones(10,1) (1:10)'];

      y=x*[10;1]+normrnd(0,0.1,10,1);

      [b,bint]=regress(y,x,0.05)

结果:  x =

     1     1

     1     2

     1     3

     1     4

     1     5

     1     6

     1     7

     1     8

     1     9

     1    10

y =

   10.9567

   11.8334

   13.0125

   14.0288

   14.8854

   16.1191

   17.1189

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值