首页 > 其他分享 >(求助)SPSS、Matlab中非线性回归拟合报错-来自即将延毕研究生的苟延残喘

(求助)SPSS、Matlab中非线性回归拟合报错-来自即将延毕研究生的苟延残喘

时间:2024-04-06 15:59:47浏览次数:12  
标签:7.16 log ln SPSS 报错 Matlab 79.43

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

1 原函数形式

原函数形式是这样的,建立多元非线性回归模型,求解参数
在这里插入图片描述

2 SPSS中输入式

我的输入式是:
0.24a * [4.95 * ln * (M)+53.56]+0.29 * [b * 40.15 * exp(0.12 * A)]+0.08c * [-12.16 * ln * (S)+129.1]+0.11d * [-7.16 * ln * (N)+79.43]+0.14e * [-169.10 * B ** 2+174.07 * B+19.12]+0.15f * [20.10 * ln * (L)-42.44]+g

这是最后一次调试,显示表达式意外结束,中途也有关于字符串的报错,该式中应该还存在字符串问题

3 Matlab代码及数据集

3.1数据集

在这里片描述

3.2Matlab代码

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

blog.csdnimg.cn/direct/52d893f9ac1540bbbe40b78269a62621.png)
源代码如下:
b=ones(1,1,1,1,1,1,1);
modelfun2=@(b,x)((0.24b(1)(4.95log(x(1,:))+53.56))+0.29b(2)(40.15exp(0.12x(2,:)))+0.08b(3)(129.1-12.16log(x(3,:)))+0.11b(4)(79.43-7.16log(x(4,:)))+0.14b(5)(19.12-169.1x(5,:).^2+174.07x(5,:))+0.15b(6)(20.1log(x(6,:))-42.44)+b(7));
[beta,r,J]=nlinfit(x,y,@modelfun,b)

function[y]=modelfun(b,x)
y=((0.24b(1)(4.95log(x(1,:))+53.56))+0.29b(2)(40.15exp(0.12x(2,:)))+0.08b(3)(129.1-12.16log(x(3,:)))+0.11b(4)(79.43-7.16log(x(4,:)))+0.14b(5)(19.12-169.1x(5,:).^2+174.07x(5,:))+0.15b(6)(20.1log(x(6,:))-42.44)+b(7));
end

4 求助目的

想请大佬们帮帮忙,SPSS和Matlab中任意一个都可,救救孩子吧。

标签:7.16,log,ln,SPSS,报错,Matlab,79.43
From: https://blog.csdn.net/weixin_46273649/article/details/137429447

相关文章