24小时热门版块排行榜    

查看: 207  |  回复: 1

zyfz

新虫 (初入文坛)

[求助] matlab问题救助

哪位高手可帮忙看下下面的代码哪里出错了,为什么ypred输出的数值多于5个呢?
x=[470 300 10; 285 80 10; 470 300 120; 470 80 120; 470 80 10 ; 100 190 10;...
    100 80 65; 470 190 65; 100 300 54; 100 300 120; 100 80 120; 285 300 10];
y=[8.55 3.79 4.82 0.02 2.75 14.39 2.54 4.35 13 8.5 0.05 11.32]';
x1=x(:,1);x2=x(:,2);x3=x(:,3);
fun=@(beta,x) (beta(1)*x2-x3/beta(5))./(1+beta(2)*x1+beta(3)*x2+beta(4)*x3);
beta0=[1 0.5 0.2 0.1 2];
[beta,r,j]=nlinfit(x,y,fun,beta0);
xinput=[470 300 10; 285 80 10; 470 300 120;470 80 120; 470 80 10];
[ypred,yci]=nlpredci(fun,xinput,beta,r,j);

[ Last edited by zyfz on 2012-2-29 at 10:07 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
zyfz(金币+3): ★★★很有帮助 多谢高手指点 2012-02-29 16:13:43
xiegangmai(金币+2, 专家考核): 谢谢应助! 2012-02-29 22:36:48
x=[470 300 10; 285 80 10; 470 300 120; 470 80 120; 470 80 10 ; 100 190 10;...
    100 80 65; 470 190 65; 100 300 54; 100 300 120; 100 80 120; 285 300 10];
y=[8.55 3.79 4.82 0.02 2.75 14.39 2.54 4.35 13 8.5 0.05 11.32]';
%x1=x(:,1);x2=x(:,2);x3=x(:,3);
fun=@(beta,x) (beta(1)*x(:,2)-x(:,3)/beta(5))./(1+beta(2)*x(:,1)+beta(3)*x(:,2)+beta(4)*x(:,3));
beta0=[1 0.5 0.2 0.1 2];
[beta,r,j]=nlinfit(x,y,fun,beta0);
xinput=[470 300 10; 285 80 10; 470 300 120;470 80 120; 470 80 10];
[ypred,yci]=nlpredci(fun,xinput,beta,r,j);
>> [ypred,yci]

ans =

    8.4315    0.2459
    3.9904    0.2219
    4.9571    0.1644
    0.0118    0.1667
    2.6603    0.1419

>> ypred

ypred =

    8.4315
    3.9904
    4.9571
    0.0118
    2.6603
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
2楼2012-02-29 15:33:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zyfz 的主题更新
信息提示
请填处理意见