不知道函数形式时如何用Matlab对数据拟合
2024-01-22 15:18:01
手机扫码访问
不知道函数形式时如何用Matlab对数据拟合?
1、根据x,y值,用plot()函数画出图形,
x=[...]
y=[...]
plot(x,y,'r-')
2、根据图形的趋势,确定拟合函数方程(一般可与已知的图形作对比),如
y=a1*x^3+a2*x^2+a3*x+a4
3、用inline()函数定义拟合函数
func=inline('a(1)*x^3+a(2)*x^2+a(3)*x+a(4)','a','x')
4、用nlinfit()函数或lsqcurvefit()函数,求拟合系数a,
a = nlinfit(x,y,func,x0)
以上内容延伸阅读:
matlab做出拟合曲线后,怎么用拟合结果预测后面的X的预测值?
1、最笨的办法,就是通过拟合工具箱拟合数据后,得到的函数表达式和系数值拷贝(Ctrl+C)出来,然后整理函数表达式,系数字母用系数值替代。这样就可以进行预测了。
2、用fit()函数进行拟合,然后用ftype()函数进行预测。这是比较实用的方法。
x=[]
y=[]
ftype = fittype('0.5-0.5*a*x-125/b+sqrt((0.5*a*x+0.5+125/b)^2-a*x)');
cdate=x;pop=y;
f=fit(cdate,pop,ftype) %拟合
y1=y;
x1=x;
y2=ftype(f.a,f.b,x1); %预测
用MATLAB做线性及非线性回归的函数有哪些?
用MATLAB做线性及非线性回归的主要函数有:
1、线性回归 函数(解决线性回归问题),如regress()、polyfit(),主要书写格式为 a= regress(y,X) %拟合线性回归函数的系数,a系数 p=polyfit(x,y,n); %拟合多项式的系数,n最大项数为9
2、非线性回归函数(解决非线性回归问题),如lsqnonlin()、lsqcurvefit()、nlinfit (),主要书写格式为 a =lsqnonlin(自定义函数,初值),a系数 a=lsqcurvefit(自定义函数,初值,自变量,因变量),a系数 a = nlinfit(自变量,因变量,自定义函数,初值),a系数
3、比较详细的内容,可以通过help()帮助函数来查找。
本文于2024-01-22 15:18:01发表在866l生活。本文链接:https://www.866l.com/t/16942414419499.html