Approximate Least Squares Curve Fitting (lsqcurvefit_approx)
lsqcurvefit_approx
Fits linear and polynomial models to data using linear least squares and approximates nonlinear models through linearization.
Syntax
[c,r2,eqn] = lsqcurvefit_approx(x,y)
[c,r2,eqn] = lsqcurvefit_approx(x,y,'linear')
[c,r2,eqn] = lsqcurvefit_approx(x,y,'poly',n)
[c,r2,eqn] = lsqcurvefit_approx(x,y,'power')
[c,r2,eqn] = lsqcurvefit_approx(x,y,'exp')
[c,r2,eqn] = lsqcurvefit_approx(x,y,'log')
Description
[c,r2,eqn] = lsqcurvefit_approx(x,y)
returns the model coefficient vector c = [m,b]
for the linear fit to a data set defined by the vectors
x
(independent variable) and y
(dependent variable).
[c,r2,eqn] = lsqcurvefit_approx(x,y,'linear')
does the exact same thing as the syntax above.
[c,r2,eqn] = lsqcurvefit_approx(x,y,'poly',n)
returns the model coefficient vector c = [a0,...,an]
for the degree polynomial fit
to a data set defined by the vectors
x
(independent variable) and y
(dependent variable).
[c,r2,eqn] = lsqcurvefit_approx(x,y,'power')
returns the model coefficient vector c = [a,b]
for the power fit to a data set defined by the vectors
x
(independent variable) and y
(dependent variable).
[c,r2,eqn] = lsqcurvefit_approx(x,y,'exp')
returns the model coefficient vector c = [a,b]
for the exponential fit to a data set defined by the vectors
x
(independent variable) and y
(dependent variable).
[c,r2,eqn] = lsqcurvefit_approx(x,y,'log')
returns the model coefficient vector c = [a,b]
for the logarithmic fit to a data set defined by the vectors
x
(independent variable) and y
(dependent variable).
NOTE: Additionally, for all the syntaxes, the coefficient of determination (r2
) and a string (eqn
) storing the fitted equation (for use in figure text with LaTeX interpreter) are also returned.
Additional Notes/Warnings:
- Only the linear and polynomial fits are true linear least squares fits. The nonlinear fits (power, exponential, and logarithmic) are approximated through transforming the model to a linear form and then applying a least squares fit.
- Taking the logarithm of a negative number produces a complex number. When linearizing, for simplicity, this function will take only the real part of the resulting complex numbers in the case that a negative data point has to be linearized. The resulting fit is typically poor, and a (slightly) better fit could be obtained by excluding those data points altogether.
Examples and Additional Documentation
- See "EXAMPLES.mlx" or the "Examples" tab on the File Exchange page for examples.
- See "Least_Squares_Curve_Fitting.pdf" (also included with download) for the technical documentation.
Citar como
Tamas Kis (2024). Approximate Least Squares Curve Fitting (lsqcurvefit_approx) (https://github.com/tamaskis/lsqcurvefit_approx-MATLAB/releases/tag/v2.0.6), GitHub. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxEtiquetas
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.