Matlab线性回归(拟合)-应用

Matlab线性回归(拟合)-应用

ID:42269336

大小:95.51 KB

页数:7页

时间:2019-09-11

Matlab线性回归(拟合)-应用_第1页
Matlab线性回归(拟合)-应用_第2页
Matlab线性回归(拟合)-应用_第3页
Matlab线性回归(拟合)-应用_第4页
Matlab线性回归(拟合)-应用_第5页
资源描述:

《Matlab线性回归(拟合)-应用》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Matlab线性回归(拟合)对于多元线性回归模型:设变量的n组观测值为.记,,则的估计值为在Matlab中,用regress函数进行多元线性回归分析,应用方法如下:语法:b=regress(y,x)[b,bint,r,rint,stats]=regress(y,x)[b,bint,r,rint,stats]=regress(y,x,alpha)b=regress(y,x),得到的p+1维列向量b即为(11.2)式给出的回归系数β的估计值.[b,bint,r,rint,stats]=regress(y,x)给出回归系数β的估计值b,β的95%置信区

2、间((p+1)*2向量)bint,残差r以及每个残差的95%置信区间(向量)rint;向量stats给出回归的R2统计量和F以及临界概率p的值.如果的置信区间(bint的第i+1行)不包含0,则在显著水平为时拒绝的假设,认为变量是显著的.[b,bint,r,rint,stats]=regress(y,x,alpha)给出了bint和rint的100(1-alpha)%的置信区间.1.三次样条插值函数的MATLAB程序matlab的splinex=0:10;y=sin(x);%插值点xx=0:.25:10;%绘图点yy=spline(x,y,xx)

3、;plot(x,y,'o',xx,yy)2.非线性拟合非线性拟合可以用以下命令(同样适用于线性回归分析):beta=nlinfit(x,y,fun,beta0)x:给定的自变量数据,y:给定的因变量数据,fun:要拟合的函数模型(句柄函数或者内联函数形式),beta0:函数模型中系数估计初值,beta返回拟合后的系数x=lsqcurvefit(fun,x0,xdata,ydata)fun要拟合的目标函数,x0:目标函数中的系数估计初值,xdata:自变量数据,ydata:函数值数据,x:拟合返回的系数(拟合结果),2.1nlinfit函数格式:[

4、beta,r,J]=nlinfit(x,y,’model’,beta0)beta:估计出的回归系数,r:残差,J:Jacobian矩阵,x,y:输入数据x、y分别为n*m矩阵和n维列向量,对一元非线性回归,x为n维列向量。Model:事先用m-文件定义的非线性函数beta0:回归系数的初值例1已知数据:x1=[0.5,0.4,0.3,0.2,0.1];x2=[0.3,0.5,0.2,0.4,0.6];x3=[1.8,1.4,1.0,1.4,1.8];y=[0.785,0.703,0.583,0.571,0.126]’;且y与x1,x2,x3关系为

5、多元非线性关系(只与x2,x3相关)为:y=a+b*x2+c*x3+d*(x2.^2)+e*(x3.^2)求非线性回归系数a,b,c,d,e。(1)对回归模型建立M文件model.m如下:functionyy=myfun(beta,x)x1=x(:,1);x2=x(:,2);x3=x(:,3);yy=beta(1)+beta(2)*x2+beta(3)*x3+beta(4)*(x2.^2)+beta(5)*(x3.^2);(2)主程序如下:x=[0.5,0.4,0.3,0.2,0.1;0.3,0.5,0.2,0.4,0.6;1.8,1.4,1.0

6、,1.4,1.8]';y=[0.785,0.703,0.583,0.571,0.126]';beta0=[1,1,1,1,1]';[beta,r,j]=nlinfit(x,y,@myfun,beta0)例题2:混凝土的抗压强度随养护时间的延长而增加,现将一批混凝土作成12个试块,记录了养护日期(日)及抗压强度y(kg/cm2)的数据:养护时间:x=[234579121417212856]抗压强度:y=[35+r42+r47+r53+r59+r65+r68+r73+r76+r82+r86+r99+r]建立非线性回归模型,对得到的模型和系数进行检验。

7、注明:此题中的+r代表加上一个[-0.5,0.5]之间的随机数模型为:y=a+k1*exp(m*x)+k2*exp(-m*x);Matlab程序:x=[234579121417212856];r=rand(1,12)-0.5;y1=[354247535965687376828699];y=y1+r;myfunc=inline('beta(1)+beta(2)*exp(beta(4)*x)+beta(3)*exp(-beta(4)*x)','beta','x');beta=nlinfit(x,y,myfunc,[0.50.50.50.5]);a=b

8、eta(1),k1=beta(2),k2=beta(3),m=beta(4)%testthemodelxx=min(x):max(x);

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。