查看: 1289|回复: 17|关注: 0

[已解决] 二元函数的拟合问题

[复制链接]

新手

7 麦片

财富积分


050


1

主题

6

帖子

0

最佳答案
各位好!
导入数据点后,通过cftool工具箱得到了如下所示的图像,但本人小白,不懂如何编程以及拟合图中的曲面。
拟合.png
数据点在Excel中, 11223.xlsx (39.97 KB, 下载次数: 7)

新手

18 麦片

财富积分


050


0

主题

43

帖子

3

最佳答案
发表于 2018-12-19 12:20:42 | 显示全部楼层 |此回复为最佳答案
精确地拟合函数不好找,只能用比较粗糙的模型:
SSy =    18433
fx=@(b,x,y)(b(1)*x.^b(2)+b(3)*x+b(4)*y+b(5)*x.*y)./(1+exp(b(6)+b(7)*x+b(8)*y+b(9)*x.^2+b(10)*y.^2+b(11)*x.*y.^2+b(12)*x.^2.*y+b(13)*x.^b(14).*y.^b(15)));
b =[1.22499699e-07  5.381111415  0.00247735583  7.102391553e-07  -4.24482762e-08  1.26290068  -0.08226560512  -0.0006498822239  0.007629369644  -1.810383404e-10  5.038374049e-12  -2.126679365e-07  0.0001738657174  0.3700617357  1.024593387]
RSS = 37.5351076622
MSe =  0.0080999
R^2 =  0.99796

nh1530.png

新手

7 麦片

财富积分


050


1

主题

6

帖子

0

最佳答案
 楼主| 发表于 2018-12-20 16:41:19 | 显示全部楼层
顾世梁 发表于 2018-12-19 12:20
精确地拟合函数不好找,只能用比较粗糙的模型:
SSy =    18433
fx=@(b,x,y)(b(1)*x.^b(2)+b(3)*x+b(4)*y+b ...

多谢!另外,这方面的资料可以推荐下吗?感激不尽!

新手

18 麦片

财富积分


050


0

主题

43

帖子

3

最佳答案
发表于 2018-12-20 17:37:05 | 显示全部楼层
98546948 发表于 2018-12-20 16:41
多谢!另外,这方面的资料可以推荐下吗?感激不尽!

除了统计书(多元非线性回归分析)和曲面拟合方面的知识,我很难提供合适的参考资料。

新手

7 麦片

财富积分


050


1

主题

6

帖子

0

最佳答案
 楼主| 发表于 2018-12-20 18:37:01 | 显示全部楼层
顾世梁 发表于 2018-12-20 17:37
除了统计书(多元非线性回归分析)和曲面拟合方面的知识,我很难提供合适的参考资料。 ...

再次感谢您的帮助!谢谢!!

新手

7 麦片

财富积分


050


1

主题

6

帖子

0

最佳答案
 楼主| 发表于 2018-12-21 09:58:22 | 显示全部楼层
顾世梁 发表于 2018-12-20 17:37
除了统计书(多元非线性回归分析)和曲面拟合方面的知识,我很难提供合适的参考资料。 ...

大神,再弱弱的问一下,如果只想拟合图上右半边部分的曲面该怎么做呢? QQ图片20181221094930.png

新手

18 麦片

财富积分


050


0

主题

43

帖子

3

最佳答案
发表于 2018-12-21 17:15:30 | 显示全部楼层
仍沿用此前的模型:
fx=@(b,x,y)(b(1)*x.^b(2)+b(3)*x+b(4)*y+b(5)*x.*y)./(1+exp(b(6)+b(7)*x+b(8)*y+b(9)*x.^2+b(10)*y.^2+b(11)*x.*y.^2+b(12)*x.^2.*y+b(13)*x.^b(14).*y.^b(15)));
SSy =     8678.9
b =[5.171888043e-10  7.22546206  0.06753482785  1.404914833e-05  -8.388565327e-07  2.673376308  -0.1388394524  -0.003359969932  0.007942948957  -7.290365053e-11  1.983622977e-12  -8.233547338e-08  0.002905552283  0.03577542457  1.003412409]
RSS = 3.849877186
MSe =  0.0020114
R^2 =  0.99956
nh1532.png

新手

7 麦片

财富积分


050


1

主题

6

帖子

0

最佳答案
 楼主| 发表于 2018-12-21 20:52:32 | 显示全部楼层
顾世梁 发表于 2018-12-21 17:15
仍沿用此前的模型:
fx=@(b,x,y)(b(1)*x.^b(2)+b(3)*x+b(4)*y+b(5)*x.*y)./(1+exp(b(6)+b(7)*x+b(8)*y+b(9) ...

佩服,佩服,我在Matlab中创建矩阵的时候,总是维数对应不上,也不知道怎么解决,另外,这种形式的方程您是怎么想到的?

新手

18 麦片

财富积分


050


0

主题

43

帖子

3

最佳答案
发表于 2018-12-21 21:30:18 | 显示全部楼层
98546948 发表于 2018-12-21 20:52
佩服,佩服,我在Matlab中创建矩阵的时候,总是维数对应不上,也不知道怎么解决,另外,这种形式的方程您 ...

后面的方程可能不是最合适的,我只是为了和前面的方程相一致而用。前面的数据看似简单,但要拟合的很好是有很大难度的。我先用一个相对复杂的模型开始,逐个剔除没有作用(不显著)的效应项,得到相对简单的方程。

新手

12 麦片

财富积分


050


3

主题

14

帖子

0

最佳答案
发表于 2018-12-28 10:22:52 | 显示全部楼层
本帖最后由 未名_wr1K9 于 2018-12-28 10:49 编辑
顾世梁 发表于 2018-12-19 12:20
精确地拟合函数不好找,只能用比较粗糙的模型:
SSy =    18433
fx=@(b,x,y)(b(1)*x.^b(2)+b(3)*x+b(4)*y+b ...

请问我想做一个这样的拟合曲面的程序该怎么入手,我用matlab的fit函数拟合的也太辣鸡了,根本用不了
我主要是做地表曲面拟合,根据经纬度坐标,实现地表曲面函数。请问该如何做,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表