matlab的fminsearch用极大似然法估计函数的参数
symsu0u1b%我的函数的三个参数sss=1;x=ma;%我的53行的一列数据fort=1:53fori=1:53sss=sss*(1/((u0+u1*t)-0.57...
syms u0 u1 b %我的函数的三个参数sss=1;x=ma; %我的53行的一列数据for t=1:53 for i=1:53sss=sss*(1/((u0+u1*t)-0.5772*(6*b^2/pi^2)^0.05)*exp(-((x(i,:)-b)/((u0+u1*t)-0.5772*(6*b^2/pi^2)^0.05))-exp(-(x(i,:)-b)/((u0+u1*t)-0.5772*(6*b^2/pi^2)^0.05)))); % 循环累乘得到似然函数 end banana = @(b,u0,u1)sss; [s,fval]= fminsearch(-banana,[0,0,0]); %参数估计end下面是出现的错误Error in MuPAD command: DOUBLE cannot convert the input expression into a double array.If the input expression contains a symbolic variable, use the VPA function inst我的意思是想通过第一个循环得到53种参数估计和极大似然值,可是我的sss总是一个符号变量,出现错误,如果我把似然函数直接放在fminsearch里面就会说我的b没有定义,求大神帮帮我 !我还是个菜鸟,非常苦恼。。。我没有
展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询