matlabl里面nlinfit提示输入参数数目不足

求大神解答!代码如下:functionF=myfun(beta0,x)a=beta0(1);b=beta0(2);F=a*(1-exp(-b*x));>>clearx=[... 求大神解答!代码如下:function F=myfun(beta0,x) a=beta0(1); b=beta0(2); F=a*(1-exp(-b*x)); >> clear x=[8,15,30,45,60,90,120,180,240,300]; y=[31.06,61.73,79.80,87.23,90.98,94.38,94.80,95.05,95.26,95.97]; beta0=[1,1]; [beta,r,J]=nlinfit(x,y,myfun,beta0); [ypred,delta]=nlpredci(myfun,x,beta,r,J); Beta betaci=nlparci(beta,r,J) ypd=[x,y',ypred,r,ypred-delta,ypred+delta] 展开
 我来答
lhmhz
高粉答主

2018-07-03 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17007

向TA提问 私信TA
展开全部

matlab里面nlinfit提示输入参数数目不足的原因是,自定义函数前少了@符号。将这两句命令改成这样就可以了。

[beta,r,J]=nlinfit(x,y,@myfun,beta0); 

[ypred,delta]=nlpredci(@myfun,x,beta,r,J); 

其余还存在,①行,列长度不对应的问题,②初值的问题。

更正这些问题后,运行代码可以得到如下结果

此图是补充代码后得到。如其他问题,可以通过私信交流。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式