24小时热门版块排行榜    

查看: 2698  |  回复: 9

一直在纠结

铁杆木虫 (正式写手)

[求助] 用MATLAB回归方程的参数,是个隐函数,请附上程序 已有3人参与

数据和方程如下,
x=
53.428        54.076        55.046        57.571        78.753        79.154        79.485        80.022        80.488        80.938        81.162        81.387        81.613        82.068        82.296        82.524        83.209        83.436        84.116        84.344        84.809        85.048        85.544        85.989        86.577        87.222        87.987        88.951        89.272        89.832        91.809        101.409        138.539
y=
1.29E+01        1.30E+01        1.32E+01        1.37E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.91E+01        1.91E+01        1.91E+01        1.91E+01        1.91E+01        1.89E+01        1.85E+01        1.84E+01        1.83E+01        1.83E+01        1.83E+01        1.83E+01        1.84E+01        1.88E+01        2.14E+01        3.36E+01
方程如下:
logy=a1+a2/(a3+x)+a4*x+a5*x^2+a6*logx+a7*y/x^2
其中a1~a7是方程要回归的7个参数
能帮忙回归出来就可以,不限于用MATLAB

但是请把解决的程序附上,多谢!!!
回复此楼

» 猜你喜欢

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

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

liq07lzucn

金虫 (正式写手)

我只想说太容易呵呵

[ 发自小木虫客户端 ]
2楼2014-06-28 17:38:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

一直在纠结

铁杆木虫 (正式写手)

引用回帖:
2楼: Originally posted by liq07lzucn at 2014-06-28 17:38:54
我只想说太容易呵呵

既然容易那能不能麻烦您给受累做一下
3楼2014-06-28 18:32:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

george1990

金虫 (小有名气)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
一直在纠结: 金币+2, 有帮助, 多谢 2014-08-02 09:11:41
楼主可以使用1stOpt这个软件,对于求解此类问题有奇效的,而且编程也简单
天天多学一点
4楼2014-06-28 19:37:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Holly2012

木虫 (正式写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
一直在纠结: 金币+2, ★★★很有帮助, 多谢 2014-08-02 09:45:26
参考 http://muchong.com/bbs/viewthread.php?tid=3240154    一楼有完整代码,只要修改一下函数和数据就可以
5楼2014-06-28 20:09:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

一直在纠结

铁杆木虫 (正式写手)

引用回帖:
5楼: Originally posted by Holly2012 at 2014-06-28 20:09:04
参考 http://muchong.com/bbs/viewthread.php?tid=3240154    一楼有完整代码,只要修改一下函数和数据就可以

呃  仿照他的输入了一下有个错误 但是不知道是哪里不行  能帮忙看一下吗
p=[1.29E+01        1.30E+01        1.32E+01        1.37E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.91E+01        1.91E+01        1.91E+01        1.91E+01        1.91E+01        1.89E+01        1.85E+01        1.84E+01        1.83E+01        1.83E+01        1.83E+01        1.83E+01        1.84E+01        1.88E+01        2.14E+01        3.36E+01];
c=[53.428        54.076        55.046        57.571        78.753        79.154        79.485        80.022        80.488        80.938        81.162        81.387        81.613        82.068        82.296        82.524        83.209        83.436        84.116        84.344        84.809        85.048        85.544        85.989        86.577        87.222        87.987        88.951        89.272        89.832        91.809        101.409        138.539];
cc=c';
pp=p';
F=@(q,x)(q(1)+q(2)/(q(3)+x(:,1))+q(4)*x(:,1)+q(5)*(x(:,1)^2)+q(6)*log(x(:,1))+q(7)*x(:,2)/x(:,1)^2)-log(x(:,2));
x=[cc pp];
q0=[1    1     1    1    1    1    1];
warning off
q=nlinfit(x,zeros(size(x,1),1),F,q0);
disp(num2str(q));
显示错误,应该是方程输入错误,但是不知道错误出在了哪里
6楼2014-06-29 09:45:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hc315

铁虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
一直在纠结: 金币+16, ★★★★★最佳答案, 辛苦了!!这回归结果。。唉。。。 2014-08-02 09:46:04
引用回帖:
6楼: Originally posted by 一直在纠结 at 2014-06-29 09:45:06
呃  仿照他的输入了一下有个错误 但是不知道是哪里不行  能帮忙看一下吗
p=;
c=;
cc=c';
pp=p';
F=@(q,x)(q(1)+q(2)/(q(3)+x(:,1))+q(4)*x(:,1)+q(5)*(x(:,1)^2)+q(6)*log(x(:,1))+q(7)*x(:,2)/x(:,1)^2)-log ...

c=[53.4280000000000,54.0760000000000,55.0460000000000,57.5710000000000,78.7530000000000,79.1540000000000,79.4850000000000,80.0220000000000,80.4880000000000,80.9380000000000,81.1620000000000,81.3870000000000,81.6130000000000,82.0680000000000,82.2960000000000,82.5240000000000,83.2090000000000,83.4360000000000,84.1160000000000,84.3440000000000,84.8090000000000,85.0480000000000,85.5440000000000,85.9890000000000,86.5770000000000,87.2220000000000,87.9870000000000,88.9510000000000,89.2720000000000,89.8320000000000,91.8090000000000,101.409000000000,138.539000000000;];
p=[12.9000000000000,13,13.2000000000000,13.7000000000000,19.3000000000000,19.3000000000000,19.3000000000000,19.3000000000000,19.3000000000000,19.3000000000000,19.3000000000000,19.2000000000000,19.2000000000000,19.2000000000000,19.2000000000000,19.2000000000000,19.2000000000000,19.1000000000000,19.1000000000000,19.1000000000000,19.1000000000000,19.1000000000000,18.9000000000000,18.5000000000000,18.4000000000000,18.3000000000000,18.3000000000000,18.3000000000000,18.3000000000000,18.4000000000000,18.8000000000000,21.4000000000000,33.6000000000000;];
cc=c';
pp=p';
F=@(q,x)(q(1)+q(2)./(q(3)+x(:,1))+q(4)*x(:,1)+q(5)*x(:,1).^2+q(6)*log(x(:,1))+q(7)*x(:,2)./x(:,1).^2-x(:,2));  
x=[cc pp];
q0=[1,1,1,1,1,1,1];
warning off
q=nlinfit(x,zeros(size(x,1),1),F,q0);
disp('H A B分别为')
disp(num2str(q));
plot(x(:,1),x(:,2),'r^');hold on;
ezplot(@(x,y)F(q,[x,y]))
7楼2014-08-02 03:17:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

差点儿是帅哥

金虫 (著名写手)

引用回帖:
6楼: Originally posted by 一直在纠结 at 2014-06-29 09:45:06
呃  仿照他的输入了一下有个错误 但是不知道是哪里不行  能帮忙看一下吗
p=;
c=;
cc=c';
pp=p';
F=@(q,x)(q(1)+q(2)/(q(3)+x(:,1))+q(4)*x(:,1)+q(5)*(x(:,1)^2)+q(6)*log(x(:,1))+q(7)*x(:,2)/x(:,1)^2)-log ...

其它行代码不变动,
更改部分如下所示:
x=[cc pp];
F=@(q,x)(q(1)+q(2)./(q(3)+x(:,1))+q(4).*x(:,1)+q(5).*(x(:,1).^2)+q(6).*log(x(:,1))+q(7).*x(:,2)./x(:,1).^2)-log(x(:,2));

好好学习,天天向上
8楼2015-04-17 23:40:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

差点儿是帅哥

金虫 (著名写手)

引用回帖:
6楼: Originally posted by 一直在纠结 at 2014-06-29 09:45:06
呃  仿照他的输入了一下有个错误 但是不知道是哪里不行  能帮忙看一下吗
p=;
c=;
cc=c';
pp=p';
F=@(q,x)(q(1)+q(2)/(q(3)+x(:,1))+q(4)*x(:,1)+q(5)*(x(:,1)^2)+q(6)*log(x(:,1))+q(7)*x(:,2)/x(:,1)^2)-log ...

输出结果:
>> Untitled3
-129.9228331593238       -221103129346.93     -8828458688.195194     -0.913998666072843   0.002578727952074724      37.74968530959259     -312.4519422953365
好好学习,天天向上
9楼2015-04-17 23:43:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

差点儿是帅哥

金虫 (著名写手)

引用回帖:
8楼: Originally posted by 差点儿是帅哥 at 2015-04-17 23:40:49
其它行代码不变动,
更改部分如下所示:
x=;
F=@(q,x)(q(1)+q(2)./(q(3)+x(:,1))+q(4).*x(:,1)+q(5).*(x(:,1).^2)+q(6).*log(x(:,1))+q(7).*x(:,2)./x(:,1).^2)-log(x(:,2));

...

p=[1.29E+01        1.30E+01        1.32E+01        1.37E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.93E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.92E+01        1.91E+01        1.91E+01        1.91E+01        1.91E+01        1.91E+01        1.89E+01        1.85E+01        1.84E+01        1.83E+01        1.83E+01        1.83E+01        1.83E+01        1.84E+01        1.88E+01        2.14E+01        3.36E+01];
c=[53.428        54.076        55.046        57.571        78.753        79.154        79.485        80.022        80.488        80.938        81.162        81.387        81.613        82.068        82.296        82.524        83.209        83.436        84.116        84.344        84.809        85.048        85.544        85.989        86.577        87.222        87.987        88.951        89.272        89.832        91.809        101.409        138.539];
cc=c';
pp=p';
x=[cc pp];
F=@(q,x)(q(1)+q(2)./(q(3)+x(:,1))+q(4).*x(:,1)+q(5).*(x(:,1).^2)+q(6).*log(x(:,1))+q(7).*x(:,2)./x(:,1).^2)-log(x(:,2));
q0=[1    1     1    1    1    1    1];
q=nlinfit(x,zeros(size(x,1),1),F,q0);
disp(num2str(q));
好好学习,天天向上
10楼2015-04-17 23:44:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 一直在纠结 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 科研孤儿太难了 +14 我4大白菜 2026-08-20 15/750 2026-08-20 22:33 by 袁向阳007
[基金申请] 言之凿凿,明天官网会通知放榜? +15 医学老男孩 2026-08-20 17/850 2026-08-20 20:35 by CaoLG
[基金申请] 时间戳又变了 +12 wuchongjun 2026-08-20 17/850 2026-08-20 20:05 by spzhao
[基金申请] 今天系统多次维护,明天很可能放榜! +10 zju2000 2026-08-16 11/550 2026-08-20 20:02 by cl479861084
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 今天基金会出结果吗?20260819 +14 kkkl_v 2026-08-19 15/750 2026-08-20 08:21 by sunzitan
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 什么时候开奖? +6 CrisMessi 2026-08-18 6/300 2026-08-19 08:06 by Equinoxhua
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见