Fit model with 3 independent variables and many parameters to data?

4 ビュー (過去 30 日間)
Justin Solomon
Justin Solomon 2012 年 10 月 26 日
回答済み: Sander van Otterdijk 2019 年 4 月 18 日
Is it possible to use the fit() function to fit a model with 3 independent variables and many parameters (coefficients)? Reading through the documentation, I get the impression that Matlab only supports 2 independent variables. Any insight would be helpful.
Thanks, Justin
  1 件のコメント
Matt J
Matt J 2012 年 10 月 26 日
For more general kinds of fitting, you probably need Optimization Toolbox solvers.

サインインしてコメントする。

採用された回答

Sean de Wolski
Sean de Wolski 2012 年 10 月 26 日
Do you have the Statistics or Optimization Toolboxes? If so:
Optim:
* doc lsqcurvefit
* doc lsqlin
* doc lsqnonlin
Stats:
* doc NonlinearModel
* doc LinearModel
* doc regress
I'm missing many others, we can point you in a more specific direction if you have more details.
  4 件のコメント
Justin Solomon
Justin Solomon 2012 年 10 月 26 日
編集済み: Justin Solomon 2012 年 10 月 26 日
Sorry, my code is a little bit messy right now (its written in a GUI and it would take me a while to put it in an understandable format).
I've implemented the lscurvefit() routine. It works in a reasonable amount of time if I give it a good starting guess and limits.
Anyways, is there a way to weight input data points (ydata)? In other words, some of my data points are less important than others so I would like to minimize a 'weighted' sum of square errors instead of the normal sum of square errors used by default. Possible? Thanks again for your help.
Justin Solomon
Justin Solomon 2012 年 10 月 26 日
I just saw that I can use lsqnonlin() instead of lsqcurvefit() to do what I need because in lsqnonlin() the function that your minimizing is supposed to return the residuals instead of the predicted values as in lsqcurvefit(). Thus I can just weight the residuals that are returned in my function definition.

サインインしてコメントする。

その他の回答 (1 件)

Sander van Otterdijk
Sander van Otterdijk 2019 年 4 月 18 日
hoi
dit is een code
do
if code = dit
do: zijn.
end

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by