有这样几个数组
自变量n个:
x=[...]
y=[...]
m=[....]
w=[.....]
..........
因变量一个:
z=[......]
模型1(两个自变量)
z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;
模型2(三个自变量)
z=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2;
模型3(三个自变量)
z=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2+h*x^(1/2)+i*y^(1/2)+j*m^(1/2);
模型4(四个自变量)
z=w*(a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2);
模型5(四个自变量)
z=w*(a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2+h*x^(1/2)+i*y^(1/2)+j*m^(1/2));
模型6(n个自变量)
z=...............;
求解里面的相关系数a,b,c,d,e..........
简单一次函数二次函数二元都会了,但像上面这样的复杂模型该如何求解呢?
其实,模型无所谓,我需要的是尽可能的把上面的点拟合出来。
有没有直接输入上面的数组,用matlab帮我们构造出最理想的模型的工具或命令,理想模型的标准就是数组上所有数据都是有效数据,都对结果有影响,其实也是我不是解数学题,而是解决实际问题,上面的数据都是有效值!
不是数学专业的,上面的名词可能有用错的。但反正目的就一个:
我输入一系列的自变量,能输出一个和实际输出极为接近的值!!!
授之以鱼不如授之以渔,希望能教会我如何使用matlab进行数值的拟合、回归、求解之类的。本人拥有一定的matlab基础,这点无需担忧!
参加过数学建模竞赛,但对曲线拟合这块还不熟。这次因为需要解决一个实际问题,想通过matlab来帮我找出自变量和因变量之间的函数关系。但是我并不知道因变量和自变量的实际函数模型,上面写的模型都是举的例子。matlab除了函数不是还有很多工具么?能否让他自行帮我找出最合适的函数模型?上面的预估值无从下手啊
追答恐怕没有这样的工具,你要拟合肯定要知道大概的模型,至于初始值,你可以随便赋一组,然后把拟合得到的结果再作为初始值再次拟合,反复几次即可。而且,一组数据可以有很多模型能够拟合出来,模型的选择还得靠你自己。