用matlab拟合一组数据,要求得出函数表达式

数据如下(1.75,0.26),(2.25,0.32)(2.5,0.44)(2.875,0.57)(2.686,0.50)(2.563,0.46)

这个太难了,或者说是有太多的不确定性
因为连一个大概的函数形式都没有给出来
也就是说可能性太多,这组数据可以拟合出无数多种函数结果
如果什么函数形式都不给出的话,或者用多项式拟合吧
下面是尝试用11次多项式拟合你的数据
x=[9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39];
y=[9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9];
p=polyfit(x,y,11);
xx=linspace(9,39,100);
yy=polyval(p,xx);
plot(x,y,'o');hold
on
plot(xx,yy,'r');hold
off
legend('数据','拟合','location','northwest');
title(poly2str(p,'x'));
如果是正态分布
x=[9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39];
y=[9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9];
fun=@(p,x)
p(1)*exp(-(x-p(2)).^2./2/p(3)^2);
p=nlinfit(x,y,fun,[250
32
10]);
xx=linspace(9,39,100);
yy=fun(p,xx);
plot(x,y,'o');hold
on
plot(xx,yy,'r');hold
off
legend('数据','拟合','location','northwest');
其中得到的p是有3个数的向量
函数形式是
p(1)*exp(-(x-p(2)).^2./2/p(3)^2)
p(1)是幅度,p(2)是中心横坐标,p(3)是标准差
温馨提示:内容为网友见解,仅供参考
无其他回答

用matlab拟合一组数据,要求得出函数表达式
y=b1+b2*x+b3*x^2+b4*x^3+b5*x^4;所以上述函数可以用matlab的regress()多元线性回归分析函数来拟合。实现过程如下:A=[1.75,0.26;2.25,0.32;2.5,0.44;2.875,0.57;2.686,0.50;2.563,0.46];x=A(:,1),y=A(:,2)X=[ones(length(y),1),x,x.^2,x.^3,x.^4]...

用matlab拟合一组数据,要求得出函数表达式
你好!以下是拟合代码和拟合结果:clc;clear allx=[1.096 2.193 3.289 4.385 5.481 6.577 7.673 8.769... 9.865 10.961 12.057 13.153 14.249 15.345 16.441... 17.537 18.633 19.729 20.825 21.921 23.017 24.113... 25.209 26.305 27.401 28.497 29.59...

在matlab中如何根据拟合图得到函数?
在matlab中根据拟合图得到函数步骤如下:1、常用的模型有多项式模型、幂函数模型、指数函数模型等。2、设出函数,用命令“plot”绘出图像作为对比。3、准备好散点数据,用命令“plot”绘出散点作为对比。4、调用函数“fit”,参数包括散点数据和曲线拟合模型。5、按回车键即可完成曲线拟合,p1、p2、p3...

...求拟合的公式,就是我知道一组数据,用matlab拟合曲线后,怎么知道这 ...
使用polyfit函数就可以拟合曲线了 比如给出的坐标分别是x和y,则有 P=polyfit(x,y,3)这样得到的P就是多项式的系数。这里的3指的是三次多项式!祝你学习愉快!

matlab样条拟合插值后获得曲线方程
0.1411 就可以知道多项式的表达式了,比如第二行表示函数:0.1177*(x-2)^3-0.4180*(x-2)^2 -0.4679*(x-2)+0.9093(这个2就是断点)这个分段函数的定义域为2~3,如果你要算2.5的插值,只要把他代入这个函数,就得到了这个多项式即可,当然用matlab只要输入命令ppval(p,2.5)就可以了 ...

在matlab中,已知一组组(x,y)如何在一个坐标区内拟合这些曲线,求出曲线...
for i=1:length(x)S=S+(x(1)+x(2)*exp(t)-y(i));%x(1)+x(2)*exp(t)是要拟合的表达式,这里仅是例子;x(1),x(2),是系数 end 存盘;x=[];%赋予系数初始值;x=Isqnonlin('f',x);%得到系数 S=f(x);%得到最终误差。这仅是非线性拟合,不同的拟合会有不同的调用函数。

matlab拟合曲线,求曲线函数方程
拟合曲线方程为 拟合曲线图形为

matlab中拟合函数的表达式怎么输出?
在拟合工具箱里面选择需要拟合的目标函数形式,输出就是那个目标函数的待定参数。例如,如果选择你和3次多项式:ax^3+bx^2+cx+d,则输出a,b,c,d这4个参数。

如何用matlab根据固定的自定义公式拟合一组数据?
fun=@(p,x)log(1+p(1)*p(2)*x)\/p(2);这里p(1)对应于a,p(2)对应于b 第三步,使用nlinfit%非线性回归函数,求解【a,b】系数,即 [p,R] = nlinfit(x,y,fun,[10,5]) 这里R是极差(拟合值与y值的差值)第四步,【a,b】系数,即 a=p(1),b=p(2)第五步,验证拟合值与y...

怎样用matlab产生一组实验数据,并求这组数据的3阶拟合多项式?
三、代码:clear all;clc;close all;x=[1.75,2.25,2.5,2.875,2.686,2.563];y=[0.26,0.32,0.44,0.57,0.50,0.46];plot(x,y,'r*')[p,s]=polyfit(x,y,5) %参数改为1就是线性拟合y1=polyval(p,x)hold on;plot(x,y1,'b.')五次多项式拟合生成的函数值与原数据基本...

相似回答
大家正在搜