展开全部
如果你懂英语,就用matlab最强大的函数help(一般人我不告诉他)
help nlinfit
help lsqcurvefit
如果不懂英语,继续看
进行非线性回归时可使用nlinfit指令,其语法如下:
beta = nlinfit(X,y,fun,beta0)
[beta,r,J] = nlinfit(X,y,fun,beta0)
[...] = nlinfit(X, y, fun, beta0, options)
[x,resnorm]= lsqcurvefit(fun,x0,xdata,ydata);
参数解释:
input:fun——编程者需要拟合的函数
x0——函数系数的初始猜测值
xdata——x坐标的值
ydata——y左边的值
output:x——经拟合的系数
resnorm——the value of the squared 2-norm of the residual at x: sum((fun(x,xdata)-ydata).^2).
example:
function fitfunc
xdata=[3.5 7.7 9.3 4.5 8.6 2.8 1.3 7.9 10.1 5.4]; %定义自变量
ydata=[16.5 149.6 263.1 24.6 208.5 9.9 2.7 162.9 322.0 52.3]; %定义因变量
x0=[7,7,7]; %初始估计值
[x,renorm]=lsqcurvefit(@myfun,x0,xdata,ydata); %确定待定系数
disp(x);
disp(renorm);
function F=myfun(x,xdata)
F=x(1)*(xdata.^2)+x(2)*sin(xdata)+x(3)*(xdata.^3); %预定义函数关系式
help nlinfit
help lsqcurvefit
如果不懂英语,继续看
进行非线性回归时可使用nlinfit指令,其语法如下:
beta = nlinfit(X,y,fun,beta0)
[beta,r,J] = nlinfit(X,y,fun,beta0)
[...] = nlinfit(X, y, fun, beta0, options)
[x,resnorm]= lsqcurvefit(fun,x0,xdata,ydata);
参数解释:
input:fun——编程者需要拟合的函数
x0——函数系数的初始猜测值
xdata——x坐标的值
ydata——y左边的值
output:x——经拟合的系数
resnorm——the value of the squared 2-norm of the residual at x: sum((fun(x,xdata)-ydata).^2).
example:
function fitfunc
xdata=[3.5 7.7 9.3 4.5 8.6 2.8 1.3 7.9 10.1 5.4]; %定义自变量
ydata=[16.5 149.6 263.1 24.6 208.5 9.9 2.7 162.9 322.0 52.3]; %定义因变量
x0=[7,7,7]; %初始估计值
[x,renorm]=lsqcurvefit(@myfun,x0,xdata,ydata); %确定待定系数
disp(x);
disp(renorm);
function F=myfun(x,xdata)
F=x(1)*(xdata.^2)+x(2)*sin(xdata)+x(3)*(xdata.^3); %预定义函数关系式
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
额
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询