我在MATLAB中使用fit
函数,并且在检索拟合值时遇到了一些问题。如果我错了,请纠正我,但我们应该
y = y_bar + residuals
任何观察结果。
使用MATLAB的fit
函数时,如
[cfun, gof,outputs] = fit(x,y,'exp2');
我的印象是我可以用
检索拟合值fittedvals = y - outputs.residuals
但是,如果我尝试通过
计算函数来重现结果[cfun, gof,outputs] = fit(x,y,'exp2');
param = coeffvalues(cfun);
fitted = param(1)*exp(param(2)*x)+param(3)*exp(param(4)*x);
结果大不相同。更具体地说,拟合得到的值似乎是
的结果fittedvals = y+outputs.residuals
此外,如果我使用poly5
模型拟合,通过观察值和残差之间的差异获得的拟合值似乎与通过长形方程获得的值匹配。