当前位置:   article > 正文

matlab 曲线拟合

matlab中%.16f命令

曲线拟合(转载: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<

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/97085
推荐阅读
相关标签
  

闽ICP备14008679号