MATLAB题目,求大神! 用这些数据拟合合适的方程。

x=[9058,7568,4392,3490,2235,2039,1843,1607,1411,1137,1098,1058,1019,941,901,823,784,666,588,549,431,352,313,274,235,196]';
y=[4,10,75,126,249,290,345,425,546,662,710,763,839,933,1040,1170,1330,1741,2132,2630,3870,5105,7570,9150,10550,16190]';

运行这个代码:

clc;clear;
x=[9058,7568,4392,3490,2235,2039,1843,1607,1411,1137,1098,1058,1019,941,901,823,784,666,588,549,431,352,313,274,235,196]';
y=[4,10,75,126,249,290,345,425,546,662,710,763,839,933,1040,1170,1330,1741,2132,2630,3870,5105,7570,9150,10550,16190]';
cftool(x,y)

在弹出的对话框中选择Exponential, Number of terms 选择2,如图:

拟合出来的曲线如图:

拟合得到的公式,数据如图:

根据你的数据关系,采用的是指数拟合。你也可以选择其他形式拟合,就是改变那个Expnential!

追问

a=9.247e+04中的e+04是什么意思,结果a=多少,如果这个f(x)方程要写成C程序,要怎么写?

追答

9.247e+04表示9.247乘以10的4次方。你看到这个有边框,部分数据被遮挡了,如下:

写成C语言是:

开始加上#include <math>

程序中就可以调用pow(x,y)    /*表示x的y次方,这里x要写成2,7323或者更精确些!*/

追问

a后面括号里的内容是什么,我想写成单片机的C程序,也可以调用pow函数吗

追答

这里面一共有三组数据,你可以挑用任意一组!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-14
General model Power1:
f(x) = a*x^b
Coefficients (with 95% confidence bounds):
a = 2.004e+08 (1.114e+08, 2.894e+08)
b = -1.789 (-1.87, -1.708)

Goodness of fit:
SSE: 1.89e+06
R-square: 0.9952
Adjusted R-square: 0.9951
RMSE: 280.6
General model Power2:
f(x) = a*x^b+c
Coefficients (with 95% confidence bounds):
a = 2.108e+08 (7.4e+07, 3.475e+08)
b = -1.799 (-1.92, -1.678)
c = 22.38 (-181, 225.8)

Goodness of fit:
SSE: 1.886e+06
R-square: 0.9953
Adjusted R-square: 0.9948
RMSE: 286.3
以上两个拟合较好,其它的都差些追问

可以给我完整的程序么?我想要看一下结果,要有图和方程的

追答

附件中有两个图,方程在上次已有

相似回答