Matlab中fit函数的局限以及其解决方案

在处理数据时,相信许多小伙伴都使用过fit函数来对数据进行拟合吧,但是fit函数只能用于曲线或者曲面的数据拟合,对于更复杂多元非线性方程则无能为力,例如如下代码:

% Matlab

x1=value_2m(:,4); %sst
x2=value_2m(:,3); %kd490
x3=value_2m(:,2); %choler
x4=value_2m(:,5); %time
y =value_2m(:,1)%pco2
ft = fittype( @(a,b,c,d,ab,ac,ad,bc,bd,cd,aa,bb,cc,dd, x1,x2,x3,x4)...
                 a.*x1 + b.*x2 + c.*x3 + d.*x4 +ab.*x1.*x2 + ac.*x1.*x3 + ad.*x1.*x4...
                 + bc.*x2.*x3 + bd.*x2.*x4 + cd.*x3.*x4...
                 + aa.*x1.*x1 + bb.*x2.*x2 + cc.*x1.*x1 + dd.*x1.*x1,...
                 'independent', {'x1','x2','x3','x4'},...
                'dependent', 'y' );
fit([x1(:),x2(:),x3(:),x4(:)],y(:),ft)

报错如下:

错误使用 fittype/testCustomModelEvaluation (line 12)
Expression a.*x1+b.*x2+c.*x3+d.*x4+ab.*x1.*x2+ac.*x1.*x3
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你可真搞笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值