Is it possible to fit data to more than two independent variables using Curve Fitting Toolbox R2013b?
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MathWorks Support Team
le 13 Juil 2009
Modifié(e) : MathWorks Support Team
le 15 Jan 2014
I would like to use Curve Fitting Toolbox to fit my data to more than two independent variables.
Réponse acceptée
MathWorks Support Team
le 18 Oct 2013
The ability to fit data to more than two independent variables is not available in Curve Fitting Toolbox.
To work around this issue, you can generate your own objective function and use functions from Optimization Toolbox to fit your data to more than two variables.
However, if the multivariate function is linear in the coefficients you can construct a linear system and solve it.
For example, let us assume a polynomial described by the following equation,
F = a0 + a1 .* X + a2 .* Y + a3 .* Z + a4 .* X .* Z
If "X", "Y", "Z" , are the three independent variable vectors and "F" the dependent variable vector with your data, you can express this system of equations as
F = D * u
where
- "D" is a matrix you can define in MATLAB as
>> D = [ones(length(X), 1), X, Y, Z, X .* Z ]
(Note that the number of rows is equal to the number of points in your data and the number of columns is the number of coefficients in your particular polynomial)
- "F" is the vector with the dependent variable data
In this situation, the polynomial coefficients are represented by a vector
u = [a0; a1; a2; a3; a4].
You can use the Left Matrix Division operator "\" to find this vector of coefficients as
>> u = D \ F
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Interpolation dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!