matlab非线性回归步骤及实例演示
1、非线性回归
[beta,r,J]=nlinfit(x,y,'modelfun', beta0) 非线性回归系数的命令
nlintool(x,y,'modelfun', beta0,alpha) 非线性回归 GUI 界面
参数说明
beta :估计出的回归系数;
r :残差;
J:Jacobian 矩阵;
x,y :输入数据 x、y 分别为矩阵和 n 维列向量,对一元非线性回归 ,x 为 n 维列向量;
modelfun :M函数、匿名函数或 inline 函数,定义的非线性回归函数;
beta0 :回归系数的初值;
2、预测和预测误差估计
[Y,DELTA]=nlpredci('modelfun', x,beta,r,J)
获取 x 处的预测值 Y 及预测值的显著性为 1-alpha 的置信区间 Y±DELTA
3、实例演示:
对将要拟合的非线性模型,建立 M函数如下。
function yhat=modelfun(beta,x)
%beta 是需要回归的参数
%x是提供的数据
yhat=beta(1)*exp(beta(2)./x);
4、输入数据
x=2:16;
y=[6.42 8.20 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.60 10.80 10.60 10.90 10.76];
beta0=[8 2]';
5、求回归系数
[beta,r ,J]=nlinfit(x',y',@modelfun,beta0);
beta
6、即得回归模型为:
7、预测及作图
[YY,delta]=nlpredci('modelfun',x',beta,r ,J);
plot(x,y,'k+',x,YY,'r')
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:68
阅读量:168
阅读量:175
阅读量:183
阅读量:140