查看: 4098  |  回复: 9
本帖产生 1 个 程序强帖 ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

任天青

金虫 (小有名气)

[求助] matlab多元非线性拟合

希望虫友能给与帮助。

比如一组这样的数据,Y=f(x1,x2,x3),只知道与x1,x2,x3相关且非线性,但完全不知道是如何形式的函数,不知道能否用matlab拟合出其最接近的方程式出来。本人对matlab也不是特别了解。
Y                   x1            x2                x3
168.7         202.9         145.9         12.1
142.0         206.4         152.9         15.8
181.9         205.8         144.2         10.7
119.7         206.8         156.2         20.9
243.9         203.9         130.6         5.0
170.1         205.8         141.9         17.2
167.3         200.1         138.7         16.3
269.2         203.2         132.0         9.7
254.1         205.4         128.9         10.6
325.2         208.8         123.4         6.7
83.9         210.0         153.4         17.1
26.7         206.4         176.6         92.9
-1.3         207.1         190.8         149.8
79.3         209.2         157.2         21.4
68.2         210.6         167.9         44.7
41.1         205.2         162.9         61.3
8.4         198.8         176.1         115.7
50.1         209.8         167.3         64.9
189.7         216.8         160.2         20.9
50.7         200.4         158.2         46.4
35.9         207.1         167.9         64.0
回复此楼
实验虐我千百遍,我待实验如初恋...
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Fibo101215

新虫 (初入文坛)

【答案】应助回帖

引用回帖:
4楼: Originally posted by jswoo at 2012-05-21 09:48:21
不知道咋发图片,sorry了~~请版主编辑一下。

您好,有关matlab的问题还想请教您一下。。
我的公式是这样的:y=[a*(t^2-e*t^2)+b*(2-t^2+e*t^2)*T1-(1-t*e-t^2+e*t^2)T2]/t*e
里面的e、t和y都是数组,T1为已知标量待输入,T2也是已知标量待输入,a、b是这个已知公式里需要优化的参数,我想请教的是:如果我想用lsqcurvefit这个函数或者其他函数或者DIY编码该如何进行编程,因为就目前而言我还处于菜鸟阶段,感激不尽~感激不尽!!!
5楼2012-09-06 11:03:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

jswoo

铁杆木虫 (著名写手)

阿拉多梦

【答案】应助回帖

xzhdty: , 谢谢参与 2012-05-21 22:55:22
jjdg: 编辑内容 2012-05-22 02:11
jjdg: 程序强帖+1, 感谢参与 2012-05-22 02:13:54
小木虫: 金币+2, 帖子真精彩 2015-05-07 18:07:33
采用多元非线性回归:
CODE:
data.txt

168.7        202.9        145.9        12.1
142.0        206.4        152.9        15.8
181.9        205.8        144.2        10.7
119.7        206.8        156.2        20.9
243.9        203.9        130.6        5.0
170.1        205.8        141.9        17.2
167.3        200.1        138.7        16.3
269.2        203.2        132.0        9.7
254.1        205.4        128.9        10.6
325.2        208.8        123.4        6.7
83.9        210.0        153.4        17.1
26.7        206.4        176.6        92.9
-1.3        207.1        190.8        149.8
79.3        209.2        157.2        21.4
68.2        210.6        167.9        44.7
41.1        205.2        162.9        61.3
8.4        198.8        176.1        115.7
50.1        209.8        167.3        64.9
189.7        216.8        160.2        20.9
50.7        200.4        158.2        46.4
35.9        207.1        167.9        64.0

CODE:
function main
clc
clear
data=load('data.txt');
y=data(:,1);
x=data(:,2:4);
beta=[0.1,0.05,0.02,1];            % 回归系数的初值,任意取
yy=fun(beta,x);
[beta_out,r,J,COVB,mse]=nlinfit(x,y,@fun,beta);   
beta_out
mse
betaci=nlparci(beta_out,r,'Jacobian',J);   
betaa=[beta_out',betaci]        
[yy,delta]=nlpredci(@fun,x,beta_out,r,'Jacobian',J);
alpha=0.05;
nlintool(x,y,'fun',beta,alpha)  
r=corrcoef(y,yy)       % 求相关系数r
plotregression(y,yy)   % 并且画图r
regstats(y,yy)

CODE:
function yy=fun(beta,x)
b1 = beta(1);
b2 = beta(2);
b3 = beta(3);
b4 = beta(4);
yy=b1*(x(:,1).^b2).*(x(:,2).^b3).*(x(:,3).^b4);


计算结果如下:
y=18.8816*(x1^3.6787)*[x2^(-3.3584)]*[x3^(-0.3019)]

相关系数0.9503,
基本可以满足你的要求了。

[ Last edited by jjdg on 2012-5-22 at 02:11 ]
2楼2012-05-21 09:45:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jswoo

铁杆木虫 (著名写手)

阿拉多梦

【答案】应助回帖

jjdg: 编辑内容 2012-05-22 02:10
jjdg: 编辑内容 2012-05-22 02:11
jjdg: 编辑内容 2012-05-22 02:12
jjdg: 编辑内容 2012-05-22 02:13
jjdg: , 这个帖弄不出来,不知道传哪里去了,找不到 2012-05-22 02:13:39
图片没成功。
补一下了




[ Last edited by jjdg on 2012-5-22 at 02:13 ]
3楼2012-05-21 09:47:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jswoo

铁杆木虫 (著名写手)

阿拉多梦

不知道咋发图片,sorry了~~请版主编辑一下。
4楼2012-05-21 09:48:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 申请科研项目纯靠实力能成功吗? 200+5 David1982 2026-10-13 8/400 2026-10-14 21:38 by lhw_GPA4.0
[硕博家园] 中科院海洋所招收海洋材料相关领域博士研究生及研究助理 +3 sujiner 2026-10-08 4/200 2026-10-14 20:40 by qicaiyun
[论文投稿] 二审4个多月了还是Awaiting Reviewer Scores 10+3 纳斯达克ML 2026-10-11 4/200 2026-10-14 17:30 by babero
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +8 wangyl_123 2026-10-10 13/650 2026-10-14 15:12 by zuesli
[教师之家] 课题组会帮你通过考核么? +4 好运来~9527 2026-10-10 7/350 2026-10-13 08:41 by xli1984
[基金申请] 入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍 +6 13108017953 2026-10-08 6/300 2026-10-12 20:07 by w3w3y3
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 22:11 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
信息提示
请填处理意见