File Exchange

image thumbnail

Data Fitting

version 1.0.0.0 (3.91 KB) by Joris Meurs
MATLAB function for data fitting

3 Downloads

Updated 03 Jun 2016

GitHub view license on GitHub

File name: 'fitdata.m'. MATLAB function for data fitting based on smallest
RMSE. Regression will be performed on the data by using the following
models:
- Straight line (a + b*x)
- 2nd polynomial (a + b*x^2)
- Square root (a + b*sqrt(x))
- Logarithmic (base 10) (a + b*log10(x))
- Exponential (a + b*exp(x))
First, it is determined if data shows an off-linear profile by checking if
the slope is significantly altering. If so, the data will be regressed on
all other models except the straight line model. If no significant
deviating slope is found, the straight line model is considered as best
fit.

In case an off-linear profile has been detected, the best fit of any
other proposed model is determined by calculating the root mean squared
error (RMSE). The best regression line is considered as the one in which
the RMSE is the smallest.

Four input arguments: 'X', 'Y', 'x_label', 'y_label'
Ouput: - A plot of the best fitting regression line
- Table containing:
* Model type
* R2
* RMSE
* Regression coefficients

X: Column vector containing the x-variable (independent variable)
Y: Column vector containing the y-variable (dependent variable)
x_label: Label for x-axis (optional)
y_label: Label for y-axis (optional)

Required input syntax: fitdata(X,Y)
Optional input syntax: fidata(X,Y,x_label,y_label)

Developed by Joris Meurs BASc (2016)

Comments and Ratings (0)

MATLAB Release Compatibility
Created with R2014b
Compatible with any release
Platform Compatibility
Windows macOS Linux