polyfit with multiple dependent variables

113 views (last 30 days)
I think
can handle multiple dependent variables. But when I tried
Fit = polyfit([x1 x2], x3, 1);
I got an error message
Error using polyfit (line 44)
The first two inputs must have the same number of elements.
Although I checked x1, x2, x3 has the same length. What can one do?

Accepted Answer

Bjorn Gustavsson
Bjorn Gustavsson on 17 Dec 2020
The polyfit function only works for 1-D polynomials, as far as I understand things. However there is an n-dimensional polynomial-fitting function package on the file exchange: polyfitn. That should give you the tools necessary to solve this problem. I've used it without much problems and to sensible success.
HTH

More Answers (1)

Remy Lassalle-Balier
Remy Lassalle-Balier on 17 Dec 2020
I think polyfit does not suport multiple dependent variables. The documentation is quite clear about the fact the first parameter should be a vector and not a matrix.
You can still run your fit manually:
X = [ ones( numel( x1 ) , 1 ) , x1(:) , x2(:) ];
fitParam = X\x3(:);
Fittedx3 = X * fitParam;
This is better explained here.

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!