拟合
来源:互联网 发布:节能降温软件 编辑:程序博客网 时间:2024/04/30 13:17
拟合:用比较简单和合适的函数来逼近(或拟合)实验数据
一 拟合工具箱CFTOOL
用法:对于数据
v=[20,40,60,80,100,120,140];x=[6.5,17.8,33.6,57.1,83.4,118,153.5];plot(v,x);
图形如下:
尝试用工具箱中的立方拟合,得到图形如下:
从图形上看,得到的图形基本和点重合;得到的R方也趋向于1,可见拟合效果很好。
得到结果:
Linear model Poly3:
f(x) = p1*x^3 + p2*x^2 + p3*x + p4
Coefficients (with 95% confidence bounds):
p1 = -1.042e-005 (-3.726e-005, 1.643e-005)
p2 = 0.009065 (0.002565, 0.01557)
p3 = 0.01298 (-0.4493, 0.4752)
p4 = 2.9 (-6.263, 12.06)
Goodness of fit:
SSE: 2.951
R-square: 0.9998
Adjusted R-square: 0.9997
RMSE: 0.9918
解释:
SSE:方差
R-square: 决定系数
Adjusted R-square: 校正后的决定系数
RMSE: 标准差
当然,也可以用二次拟合,得到结果:
Linear model Poly2:
f(x) = p1*x^2 + p2*x + p3
Coefficients (with 95% confidence bounds):
p1 = 0.006565 (0.005767, 0.007364)
p2 = 0.1838 (0.05303, 0.3146)
p3 = -0.1 (-4.664, 4.464)
Goodness of fit:
SSE: 4.451
R-square: 0.9997
Adjusted R-square: 0.9996
RMSE: 1.055
总体来说,二次拟合已经基本可以反应曲线,但三次拟合精度要高一些,四次以上的拟合已经没有必要了。
另:工具箱中的非线性函数
Custom Equations 用户自定义函数
Expotential e指数函数
Fourier 傅立叶函数,含有三角函数
Gaussian 正态分布函数,高斯函数
Interpolant 插值函数,含有线性函数,移动平均等类型的拟合
Polynomial 多项式函数
Power 幂函数
Sum of sin functions正弦函数类
Weibull 威布尔函数
二 拟合函数
v=[20,40,60,80,100,120,140];x=[6.5,17.8,33.6,57.1,83.4,118,153.5];a=polyfit(v,x,2);xi=polyval(a,v);plot(v,x,'ro',v,xi,'b');
解释:
a=polyfit(xdata,ydata,n)
其中n表示多项式的最高阶数,xdata,ydata为将要拟合的数据,它是用数组的方式输入.输出参数a为拟合多项式 y=a1xn+...+anx+a n+1的系数
y=polyval(a,x,m)
计算多项式在x处的值y
线性:m=1, 二次:m=2, …
polyfit的输出是一个多项式系数的行向量。为了计算在xi数据点的多项式值,调用MATLAB的函数polyval。
- 拟合
- 拟合
- 拟合
- 拟合算法
- 最小二乘法拟合
- 多项式拟合
- 拟合方法
- 过拟合
- 多项式拟合
- 直线拟合
- 拟合曲线
- 直线拟合
- 数据拟合
- 过拟合
- 最小二乘法拟合
- 过度拟合
- 拉格朗日插值拟合
- 数据拟合
- 购车砍价秘籍
- 一些mysql语句
- 服务器处理器大乱斗 龙芯搅局2012(图)
- VIM使用系列之一——配置VIM下编程和代码阅读环境
- 管家婆ERP V3Ⅱ销售出库单生成金蝶财务软件K3 V10.3标准凭证引入的SQL select 查询语句
- 拟合
- Fibonacci Heap实现参考
- RHEL42下搭建APACHE+RESIN+MYSQL
- android系统中的多线程(二): 关于在work thread中对UI进行更新和设置
- sharepoint获取当前用户信息
- 轻量级ETL工具
- C# 时间格式化大全
- C++的多态性
- 超级短的挂马代码大全