image thumbnail

Error related performance metrics

version (2.66 KB) by Skynet
Determine various error related performance metrics.


Updated 04 Jul 2007

View License

errperf(T,P,M) uses T and P, which are target and prediction vectors respectively, and returns the value for M, which is one of several error related performance metrics.

T and P can be row or column vectors of the same size. M can be one of the following performance metrics:

mae (mean absolute error)
mse (mean squared error)
rmse (root mean squared error)

mare (mean absolute relative error)
msre (mean squared relative error)
rmsre (root mean squared relative error)

mape (mean absolute percentage error)
mspe (mean squared percentage error)
rmspe (root mean squared percentage error)


T = [0:0.2:1];
P = rand(size(T)).*T;
errperf(T,P,'mae') returns 0.1574

To compute the relevant performance metric, the function uses recursion to first compute one or more error vectors. The function can therefore secondarily be used to compute these error vectors. M can therefore also be one of the following:

e (errors)
ae (absolute errors)
se (squared errors)

re (relative errors)
are (absolute relative errors)
sre (squared relative errors)

pe (percentage errors)
ape (absolute percentage errors)
spe (squared percentage errors)


The Neural Network Toolbox also has functions to compute mae and mse. This function does not make use of the toolbox.

Percentage error equals relative error times 100.

The abbreviations used in the code, and the calculation tree are documented in a comments section within the file.

[Please subscribe to this file if you use it, so you can be notified of updates.]

Cite As

Skynet (2021). Error related performance metrics (, MATLAB Central File Exchange. Retrieved .

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

Community Treasure Hunt

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

Start Hunting!