zoukankan      html  css  js  c++  java
  • [matlab工具箱] 曲线拟合Curve Fitting

    ——转载网络

    我的matlab版本是 2016a

    首先,工具箱如何打开呢?
    这里写图片描述
    apps 这个菜单项中,可以找到很多很多的应用,点击就可以打开具体的工具窗口

    本文介绍的工具有以下这些:

    • curve Fitting
    curve Fitting

    一开始的界面是这样子的
    这里写图片描述
    其中下面这个部分是用来添加数据的,提供的选项是workspace中已经存在的变量
    这里写图片描述
    这里我提供一组数据,用来演示

    x=[8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20];  
    y=[0.6,0.62,0.64, 0.65, 0.66, 0.67, 0.68, 0.68, 0.69, 0.66, 0.65, 0.65,0.64]; 

    选择好数据后就自动把散点图画好了
    这里写图片描述
    然后在
    这里写图片描述
    这个部分选择合适的曲线

    • Exponential:指数逼近,有2种类型, a*exp(b*x) 、 a*exp(b*x) + c*exp(d*x)
    • Fourier:傅立叶逼近,有7种类型,基础型是 a0 + a1*cos(x*w) + b1*sin(x*w)
    • Gaussian:高斯逼近,有8种类型,基础型是 a1*exp(c1-((x-b1)/c1)^2)
    • Interpolant:插值逼近,有4种类型,linear、nearest neighbor、cubic spline、shape-preserving
    • Polynomial:多形式逼近,有9种类型,linear ~、quadratic ~、cubic ~、4-9th degree ~
    • Power:幂逼近,有2种类型,a*x^b 、a*x^b + c
    • Rational:有理数逼近,分子、分母共有的类型是linear ~、quadratic ~、cubic ~、4-5th degree ~;此外,分子还包括constant型
    • Smoothing Spline:平滑逼近
    • Sum of Sin Functions:正弦曲线逼近,有8种类型,基础型是 a1*sin(b1*x + c1)
    • Weibull:只有一种,a*b*x^(b-1)*exp(-a*x^b)

    在评价一个曲线的拟合效果时,除了直观的观察图像和散点的拟合程度外,matlab还提供了几个评价参数,英文解释看官网
    + The sum of squares due to error (SSE)
    + R-square
    + Adjusted R-square
    + Root mean squared error (RMSE)

    sse 这个统计量测量的是拟合值与实际值的总偏差和。它也被称为残差的平方求和
    这里写图片描述
    值越小,拟合程度越好
    R-square由三个公式计算得来,衡量了拟合在解释数据变化方面的成功程度
    这里写图片描述
    这里写图片描述
    这里写图片描述
    越接近1,表示模型在方差中所占的比例更大(with a value closer to 1 indicating that a greater proportion of variance is accounted for by the model)

    Adjusted R-square
    调整后的R-平方统计量可以接受任何小于或等于1的值,而接近1的值表示更好的拟合。当模型包含无助于预测响应的项时,可能会出现负值。

    RMSE
    由以下两个公式计算得出
    这里写图片描述
    这里写图片描述
    与sse一样,RMSE值越小,拟合程度越好

    最后,将拟合好的结果通过下图的选项即可输出到workspace中供之后编程使用
    这里写图片描述

    distribution fitter工具箱的使用说明

  • 相关阅读:
    字体图标
    HBase Shell 常用命令
    Centos7 KVM日常运维
    Centos7 KVM安装部署
    Centos7安装Puppet自动运维
    Centos7安装ansible自动运维
    H3C巡检基本命令
    组播学习
    Centos7下使用LVM给系统硬盘扩容
    python 类中方法总结 --- 实例方法、类方法、静态方法
  • 原文地址:https://www.cnblogs.com/shenben/p/11244917.html
Copyright © 2011-2022 走看看