How to fit custom equation in a linear regression?

7 views (last 30 days)
I'd like to fit a custom equation for linear regression. For example y = a1 + a2 * x^4 + a3 * x^5. How do you do this with fitlm function?
  7 Comments
Rik
Rik on 18 Nov 2022
And the other questions I asked in my comment? Did you try the code generation tool? What fit options did you use?

Sign in to comment.

Answers (1)

cr
cr on 18 Nov 2022
Edited: cr on 18 Nov 2022
Presuming you are trying to estimate a1, a2, a3 you can just to a lmdivide. You will need data for x & y with atleast 3 to solve (and 4 for a linear regression).
e.g. with the n observations, you will have n equations a1 + a2xi^4 + a3xi^5 = yi
do
A = X\Y
where A is the 3 x 1 vector of unknowns a1 a2 a3
X is n x 3 matrix of observations x1, x2, x3,...xn
[1 x1^4 x1^5;
1 x2^4 x2^5; ....;
1 xn^4 xn^5]
Y is n x 1 vector
[y1; y2;..;yn]
Regards.
  2 Comments
cr
cr on 18 Nov 2022
Edited: cr on 18 Nov 2022
You may use fitlm(X,Y). Note that \ or fitlem can be used only for linear regression and not any equation in general. You will need other functions like nlinfit etc for any equation in general.
Regards.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by