欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Matlab数据拟合

程序员文章站 2022-03-31 20:53:24
...

版本:Matlab2018

内容:

1、fittype,fit,fitoptions等函数用法介绍,包括常见函数拟合方法

2、误差分析,均方差等

3、置信度和置信区间表示【不太确定能否用到这点,先写着】

一、拟合方法介绍

使离散点尽可能的归于一条光滑曲线上,多项式拟合可以采用函数polyfit。

使用方法:

x=1:20;
y=3*x+rand(1,20)*0.5;

[p,S] = polyfit(x,y,n)

其中,p表示的多项式的参数,p(x)=p1*pow(x,n)+...+...+p(n+1),即p=[p1,p2,...,p(n+1)]

S代表误差。

一个简单的拟合例子:对于多维函数而言,基本上都可以采用如下方法进行拟合。

第一列数是Ne密度,第二列是Te,第三列 Ti, 第四列是eta;根据1,2,3求4
clear
clc
data=load('eta-all.dat');
x1=data(:,1);
x2=data(:,2);
x3=data(:,3);
y=data(:,4);
x=[x1,x2,x3];
%基于第二列等于第三列时候,出现y=x(1)./(a(1)+x(1))*a(2)*exp(a(3)*(x(2)-x(3)));
[email protected](a,x)(x2./(a(1)+x2)+a(2)).*exp((x2-x3).*a(3)+a(4)*x1);
b=[1,0.100000000000000,0.100000000000000,0.00617100000000000];
%aaa=nlinfit(x,y,func,b);%非线性拟合
aaa=lsqcurvefit(func,b,x,y);
y1=func(aaa,x);
plot(1:size(y,1),y,'o');
hold on
plot(1:size(y1,1),y1,'o');
legend('原始值','实际值')

 

相关标签: matlab matlab