精华内容
下载资源
问答
  • 龙源期刊网 http://www.doczj.com/doc/2f22f716cbaedd3383c4bb4cf7ec4afe05a1b148.html基于matlab曲线拟合的数据预测分析作者:屈长杰来源:《商情》2016年第40期【摘要】试验所得的数据一般为离散的,且不能直接用...

    龙源期刊网 http://www.doczj.com/doc/2f22f716cbaedd3383c4bb4cf7ec4afe05a1b148.html

    基于matlab曲线拟合的数据预测分析

    作者:屈长杰

    来源:《商情》2016年第40期

    【摘要】试验所得的数据一般为离散的,且不能直接用一般的方程去描述它们,这样给数据的分析和预测带来了极大的麻烦,本文针对股票数据的变化,使用matlab的多项式拟合,

    求导,以及预测功能,对股票的实时变化及其变化快慢做出分析,并用得出的拟合方程对未来的股票行情做一个基本的预测。

    【关键词】数据分析拟合 matlab

    21世纪的来临,宣告了信息化和数字化时代的到来,大量的数据在我们身边传输,其中

    包括关系国家发展的众多数据库,如人口增长,粮食增长,失业率等等,对这些数据的处理和运用,直至预测出未来数据的变化,以达到对相关方面的宏观调控,提升我国的综合实力,相当重要。本文利用matlab将股票的实时数据进行分析,对未来的股票走势做出预测,得出相

    关数据,以达到提前掌握市场的目的。

    一、数据采集

    本文使用通达信金融终端输出跃岭股份(002725)2014年1月29号至2014年4月23号股市收盘价表格,并输入起始文件夹,存为txt格式文件。

    二、数据导入

    采集的数据存入gupiaoy.xls文件中,拟合的横坐标定义为单位的采样信号,数据输入gupiaox.xls文件中,将采集的数据,定义在MATLAB工作区间,为X和Y的矩阵。

    三、matlab多项式线性拟合

    (一)多项式拟合

    调用格式为p=polyfit(x,y,n),其中x和y是输入的原始数据,而n代表阶次,当

    n=1时,拟合形式为线性回归,当n=2时,多项式为二阶多项式,原则上当n越大是,所取多项式越接近于原方程的形式,误差越小。

    (二)系统设置原始数据

    以验证系统是否处于正常工作状态,并测试系统的准确率是否有所更改,原始数据系列x 为0、0.1、0.2、0.3、0.4、0.5、0.6、 0.7、0.8、0.9、1;其中y为0.46、1.99、3.27、6.16、7.08、7.34、 7.56、9.66、9.45、9.34、11.4。

    展开全文
  • 在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,工具箱拟合结果十分不适合调用,以及继续下面的操作,所以...

    在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,

    工具箱拟合结果

    十分不适合调用,以及继续下面的操作,所以我们需要用到matlab曲线拟合函数,并且以最常用的多项式拟合函数为例作为matlab曲线拟合例子,进行详细介绍。

    44a919440d5e4054ffe6d8586d62dfd3.png

    工具/材料

    MATLAB

    matlab曲线拟合

    01

    数据准备:

    关于MATLAB曲线拟合,我写了一系列的经验,为了相互统一,采用下面的数据:

    x=[0    0.3000    0.6000    0.9000    1.2000    1.5000    1.8000    2.1000    2.4000    2.7000    3.0000]

    y=[2.0000    2.3780    3.9440    7.3460   13.2320   22.2500   35.0480   52.2740   74.5760  102.6020  137.0000]

    由函数y=4*x^3+3*x^2+2 产生。

    02

    函数命令拟合:

    MATLAB为我们提供了多项式拟合函数命令polyfit,下面我们就用这个函数命令进行拟合。

    在MATLAB主窗口中输入

    y1=polyfit(x,y,3),回车

    我们会看到下面结果:

    y1 =

    4.0000    3.0000    0.0000    2.0000

    a1f3156088fb6bdd0cac5247f09bdebc.png

    03

    函数的说明:

    y1=polyfit(x,y,N),这里函数polyfit第一个参数传递的是拟合数据的自变量,第二个参数是因变量,第三个参数是拟合多项式的阶数,这个由我们给定。如下图。我们可以给定不同的N,运用不同的多项式进行拟合。

    输出结果:

    在上面的例子中我们看到输出的结果是:

    y1 =

    4.0000    3.0000    0.0000    2.0000

    对照原始的函数y=4*x^3+3*x^2+2 ,我们可以看到,y1其实输出的是拟合函数的系数,并且由高次到低次由左到右输出。

    eb6f63b75627217ba5b38068c804055d.png

    04

    多项式阶数N的确定:

    这里有些人可能会有问题了,我们事先不知道要拟合的数据是几阶的,那么我们如何判断我们给定的拟合阶数N最终为多少呢?

    阶数确定方法一:

    这种方法是最常用的确定方法,一般情况下,我们拟合函数的目的,就是为了调用,所以在用函数拟合之前会

    用matlab曲线拟合工具箱进行拟合函数阶数的确定,由其确定拟合的阶数,然后我们用这个函数命令在其他地方进行

    十分方便地调用,这是最常用的做法。我们往往拟合的是多个同类型的数据,所以确定好一组样本的次数之后,就可以对其他数据用同样的N进行拟合。

    f931718af0942a3f3b52108fc4798f3b.png

    05

    阶数确定方法二:

    这种方法方法可以取代用cftool进行判断的过程,具体实现代码如下:

    for i=1:5

    y2=polyfit(x,y,i);

    Y=polyval(y2,x);%计算拟合函数在x处的值。

    if sum((Y-y).^2)<0.1

    c=i

    break;

    end

    end

    运行以上程序,结果如下:

    c=3

    假设我们的误差平方和精度范围为0.1,那么通过以上程序,我们可以看到用3阶函数拟合,就可以达到精度要求。在多项式进行拟合的时候这个值我们在程序执行的过程中就直接可以调用。

    说明:至于说用plot函数进行画图,肉眼观察拟合程度的那种笨方法,我们不推荐,这里也不赘述。

    a9db9566b5637b80a38155a4aea467bd.png

    好了,以上就是大致内容了,(END)

    matlab曲线拟合结果调用及显示

    01

    大家可能有疑问,我们拟合完函数之后得到的是拟合多项式的系数,我们应该如何调用?如何查看我们拟合的多项式是什么形式呢?下面我们就接着上面的内容进行介绍。

    02

    拟合多项式的显示:

    在MATLAB主窗口中输入

    syms x f(x)

    f(x)=poly2sym(y2,x)

    我们会看到输出如下结果:

    f(x) =

    4*x^3 + 3*x^2 + (5822273280258613*x)/1267650600228229401496703205376 + 2

    这就是我们拟合出来的多项式。

    这里我们看到一次项的系数并不是0,这里5822273280258613/1267650600228229401496703205376=

    4.5930e-15,这个数量级我们完全可以忽略,认为是0。

    f9da9601138657173a20177c17a827d9.png

    03

    拟合结果的调用:

    在MATLAB主窗口中输入如下命令:

    TEST=polyval(y2,x)

    我们可以看到如下结果,如下图。

    函数polyval()的第一个参数为多项式的系数,第二个参数为要计算的自变量值。可以是向量或者矩阵。

    74852daca212bf91c0570872521290a6.png

    好了,以上就是大致内容了,(END)

    声明:该文观点仅代表作者本人,天晴资讯网系信息发布平台,仅提供信息存储空间服务。

    展开全文
  • [matlab 曲线拟合(含实例)]matlab 曲线拟合 - 非常好非常全面的介绍M 拟合的参考资料Mathworks Tech-Note 1508 曲线拟合向导1. 介绍2. Mathworks 产品的曲线拟合特色a. 曲线拟合工具箱 (Curve Fitting Toolbox)b...

    [matlab 曲线拟合(含实例)]

    matlab 曲线拟合 - 非常好非常全面的介绍M 拟合的参考资料

    Mathworks Tech-Note 1508 曲线拟合向导

    1. 介绍

    2. Mathworks 产品的曲线拟合特色

    a. 曲线拟合工具箱 (Curve Fitting Toolbox)

    b. Matlab 内建函数与其他的带有曲线拟合能力的附加产品 (工具箱)

    c. 线性曲线拟合

    d. 非线性曲线拟合

    3. 加权曲线拟合方法

    a. 曲线拟合工具箱

    b. 统计工具箱

    c. 优化工具箱

    4. 利用曲线拟合工具箱提高曲线拟合结果

    5. 其他的相关资料

    第1节: 简介

    MATLAB 即有内建的解决很多通常遇到的曲线拟合问题的能力,又具有附加

    这方面的产品。本技术手册描述了几种拟合给定数据集的曲线的方法,另外,本

    手册还解释了加权曲线拟合、针对复数集的曲线拟合以及其他一些相关问题的拟

    合技巧。在介绍各种曲线拟合方法中,采用了典型例子的结合介绍。

    第2节: MathWorks产品的曲线拟合特色

    MATLAB有可以用于曲线拟合的内建函数。MathWorks公式也提供了很多工具

    箱可以用于曲线拟合。这些方法可以用来做线性或者非线性曲线拟合。MATLAB

    也有一个开放的工具箱――曲线拟合工具箱 (CurveFittingToolbox),她可以

    用于参数拟合,也可以用于非参数拟合。本节将介绍曲线拟合工具箱与其他工具

    箱、以及各种MATLAB可以用于曲线拟合的内建函数的详细特征。

    a. 曲线拟合工具箱

    曲线拟合工具箱是专门为数据集合进行曲线拟合而设计的。这个工具箱集成

    了用MATLAB建立的图形用户界面 (GUIs)和M文件函数。

    曲线拟合向导 Genial @ USTC 2004-4-18

    ? 利用工具箱的库方程 (例如线性,二次,高阶多项式等)或者是用户自定

    义方程 (局限于用户的想象力)可以进行参数拟合。当你想找出回归系数以及他

    们背后的物理意义的时候就可以采用参数拟合。

    ? 通过采用平滑样条或者其他各种插值方法,你就可以进行非参数拟合。当

    回归系数不具有物理意义并且不在意他们的时候,就采用非参数拟合方法。

    曲线拟合工具箱提供了如下功能:

    ? 数据回归,譬如 截面 (?sectioning)与平滑;

    ? 标准线性最小二乘拟合,非线性最小二乘拟合,加权最小二乘拟合,约束

    二乘 (constrained least squares)拟合 以及 稳健 (robust)拟合;

    ? 根据诸如 R2 以及 误差平方和 (SSE)确定的拟合性能的统计特征。

    请查阅曲线拟合工具箱提供的demos。

    b. MATLAB 内建函数与具有曲线拟合能力的其他工具箱

    除了曲线拟合工具箱,MATALB与其他工具箱也提供了些可以用于解决线性

    和非线性曲线拟合的功能。本节列举并解释了其中几个。

    c. 利用MATLAB 内建函数进行线性曲线拟合

    函数 描 述

    polyfit 用多项式进行数据拟合。polyfit (X,Y,N)对数据X,Y拟合N阶多

    式系数,P(X(I))~ Y(I), 在最小二乘意义上。

    \ 反斜线或者矩阵阵左除。如果A是一个方阵,A\B 基本上与

    inv (A)*B一致的,是采用的不同计算方式而已。

    polyval 在给定点计算多项式的值

    corrcoef 计算两个向量的相关系数。它可以与polyfit和polyval函数一

    起用来

    在实际数据和拟合输出之间计算R2 相关系数

    下面给出一个利用corref计算R值的例子:

    load census

    [p,s] polyfit(cdate,pop,2);

    Output polyval(p,cdate);

    Corrolation corroef(cate,Output);

    cdate 与它自身很好的相关,同样的 Output也与它自身很好相关。反对角

    线上元素是 2

    曲线拟合向导 Genial @ USTC 2004-4-18

    cdate与

    展开全文
  • matlab曲线拟合

    千次阅读 多人点赞 2017-03-12 11:32:35
    在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,工具箱拟合结果十分不适合调用,以及继续下面的操作,所以...

    在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,工具箱拟合结果十分不适合调用,以及继续下面的操作,所以我们需要用到matlab曲线拟合函数,并且以最常用的多项式拟合函数为例作为matlab曲线拟合例子,进行详细介绍。

    工具/原料

    • MATLAB

    matlab曲线拟合

    1. 1

      数据准备:

      关于MATLAB曲线拟合,我写了一系列的经验,为了相互统一,采用下面的数据:

      x=[0    0.3000    0.6000    0.9000    1.2000    1.5000    1.8000    2.1000    2.4000    2.7000    3.0000]

      y=[2.0000    2.3780    3.9440    7.3460   13.2320   22.2500   35.0480   52.2740   74.5760  102.6020  137.0000]

      由函数y=4*x^3+3*x^2+2 产生。

    2. 2

      函数命令拟合:

      MATLAB为我们提供了多项式拟合函数命令polyfit,下面我们就用这个函数命令进行拟合。

      在MATLAB主窗口中输入

      y1=polyfit(x,y,3),回车

      我们会看到下面结果:

      y1 =

          4.0000    3.0000    0.0000    2.0000

    3. 3

      函数的说明:

      y1=polyfit(x,y,N),这里函数polyfit第一个参数传递的是拟合数据的自变量,第二个参数是因变量,第三个参数是拟合多项式的阶数,这个由我们给定。如下图。我们可以给定不同的N,运用不同的多项式进行拟合。

      输出结果:

      在上面的例子中我们看到输出的结果是:

      y1 =

          4.0000    3.0000    0.0000    2.0000

      对照原始的函数y=4*x^3+3*x^2+2 ,我们可以看到,y1其实输出的是拟合函数的系数,并且由高次到低次由左到右输出。

    4. 4

      多项式阶数N的确定:

      这里有些人可能会有问题了,我们事先不知道要拟合的数据是几阶的,那么我们如何判断我们给定的拟合阶数N最终为多少呢?

      阶数确定方法一:

      这种方法是最常用的确定方法,一般情况下,我们拟合函数的目的,就是为了调用,所以在用函数拟合之前会用matlab曲线拟合工具箱进行拟合函数阶数的确定,由其确定拟合的阶数,然后我们用这个函数命令在其他地方进行十分方便地调用,这是最常用的做法。我们往往拟合的是多个同类型的数据,所以确定好一组样本的次数之后,就可以对其他数据用同样的N进行拟合。

    5. 5

      阶数确定方法二:

      这种方法方法可以取代用cftool进行判断的过程,具体实现代码如下:

      for i=1:5

          y2=polyfit(x,y,i);

          Y=polyval(y2,x);%计算拟合函数在x处的值。

          if sum((Y-y).^2)<0.1

            

              c=i  

              break;

          end

      end

      运行以上程序,结果如下:

      c=3

      假设我们的误差平方和精度范围为0.1,那么通过以上程序,我们可以看到用3阶函数拟合,就可以达到精度要求。在多项式进行拟合的时候这个值我们在程序执行的过程中就直接可以调用。

      说明:至于说用plot函数进行画图,肉眼观察拟合程度的那种笨方法,我们不推荐,这里也不赘述。

      END

    matlab曲线拟合结果调用及显示

    1. 1

      大家可能有疑问,我们拟合完函数之后得到的是拟合多项式的系数,我们应该如何调用?如何查看我们拟合的多项式是什么形式呢?下面我们就接着上面的内容进行介绍。

    2. 2

      拟合多项式的显示:

      在MATLAB主窗口中输入

      syms x f(x)

      f(x)=poly2sym(y2,x)

      我们会看到输出如下结果:

      f(x) =

       

      4*x^3 + 3*x^2 + (5822273280258613*x)/1267650600228229401496703205376 + 2

      这就是我们拟合出来的多项式。

      这里我们看到一次项的系数并不是0,这里5822273280258613/1267650600228229401496703205376=4.5930e-15,这个数量级我们完全可以忽略,认为是0。

    3. 3

      拟合结果的调用:

      在MATLAB主窗口中输入如下命令:

      TEST=polyval(y2,x)

      我们可以看到如下结果,如下图。

      函数polyval()的第一个参数为多项式的系数,第二个参数为要计算的自变量值。可以是向量或者矩阵。

    4. 转自:http://jingyan.baidu.com/article/9c69d48f409c6013c9024e8c.html

    展开全文
  • matlab曲线拟合 函数

    2018-11-15 11:35:13
    在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,工具箱拟合结果十分不适合调用,以及继续下面的操作,所以...
  • 曲线拟合实例:温度曲线问题气象部门观测到一天某些时刻的温度变化数据为:t012345678910T1315171416192624262729试描绘出温度变化曲线。曲线拟合就是计算出两组数据之间的一种函数关系,由此可描绘其变化曲线及估计...
  • 4.6 曲线拟合在上一节,已经介绍了数据插值,它要求原始数据是精确的,或具有较小的误差。事实上,由于种种原因,实验或测量中所获得的数据总会有一定的误差。在这种情况下,如果强求构造的函数(曲线)通过各插值节点...
  • matlab曲线拟合 函数 用法以及例子(polyfit)

    万次阅读 多人点赞 2018-05-22 15:48:28
    转自:https://blog.csdn.net/It_BeeCoder/article/details/78779385在运行MATLAB...所以,工具箱拟合结果十分不适合调用,以及继续下面的操作,所以我们需要用到matlab曲线拟合函数,并且以最常用的多项式拟合函数为...
  • MATLAB曲线拟合

    2017-06-22 09:42:00
    转自原文 MATLAB曲线拟合 曲线拟合 实例:温度曲线问题 气象部门观测到一天某些时刻的温度变化数据为: t 0 1 2 3 4 5 6 7 8 9 10 T ...
  • 一阶惯性加延迟环节的matlab曲线拟合,利用最小二乘法原理 一阶惯性加延迟环节的matlab曲线拟合,利用最小二乘法原理
  • MATLAB拟合函数和工具一元函数拟合可用cftool工具箱,对于一元多项式拟合也可用polyfit()多元线性函数y=ax的拟合函数regress()语法是:[a, aint]=regress(y,x,alpha)其中1-alpha是置信度,默认alpha=0.05.即置信度为...
  • Matlab曲线拟合

    千次阅读 2013-04-14 21:20:32
     Excel可以通过画散点图,添加趋势线,对数据进行简单的对数,线性,多项式,指数,幂函数曲线拟合,可能不适用于它们的组合,也就是交复杂的线性;另一种方法是使用加载项中的规划求解,运用统计和数值分析知识,...
  • MATLAB曲线拟合函数

    千次阅读 2018-08-12 20:02:00
    MATLAB曲线拟合函数 一、多项式拟合 ployfit(x,y,n) :找到次数为 n 的多项式系数,对于数据集合 {(x_i,y_i)},满足差的平方和最小 [P,E] = ployfit(x,y,n) :返回同上的多项式 P 和矩阵 E 。...
  • matlab 曲线拟合

    千次阅读 2016-12-26 09:46:00
    曲线拟合(转载: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+'...
  • matlab曲线拟合函数ployfit

    千次阅读 2019-08-23 22:39:25
    matlab多项式拟合ployfit 在matlab中,函数polyfit()采用最小二乘法对给定的数据进行多项式拟合,得到该多项式的系数。该函数的调用方式如下: polyfit(x,y,n):找到次数为n的多项式系数,对于数据集合{(xi,...
  • MATLAB曲线拟合工具箱(cftool)介绍(完结)

    千次阅读 多人点赞 2021-07-23 18:47:24
    本文通过实例对MATLAB曲线拟合工具箱进行详细讲解,帮助大家更容易理解曲线拟合工具箱(cftool)。 目录1.实例介绍2. 进入系统辨识工具箱界面3. 加载数据4. 加载数据5. 选择拟合曲线的类型 1.实例介绍 已知 x = [0 ...
  • [y,delta]=polyval(p,x,s) [y,delta]=polyval(p,x,s,mu) 产生置信区间 y delta 如果误差结果服从 标准正态分布则实测数据落在 y delta 区 间内的概率至少为 50% 例 > x=[0 0.0385 0.0963 0.1925 0.2888 0.385];...
  • Matlab曲线拟合SSE等含义.docMatlab曲线拟合SSE等含义.docMatlab曲线拟合SSE等含义.doc使用过Matlab的拟合、优化和统计等工具箱的网友,会经常遇到下面几个名词:SSE(和方差、误差平方和):The sum of squares due ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,776
精华内容 1,510
关键字:

matlab曲线拟合误差分析

matlab 订阅