Estimating a models skill of predictability

This function will compute the accuracy of a numerical model when compared to observed data.
Updated 16 Mar 2007

View License

The skill score is a statistic similar to the Nash-Sutcliffe in that the closer to one the better the model prediction. This function interprets model predictability using residual error and observed variability in your data. A skill score of 1 means a perfect fit (don't we all wish). A skill score equal to or less than zero means your model error is larger than the variability in your data, and should not be used any further without re-evaluating the model design. There are no required toolboxes to compute this statistic.

This function will take two sets of data indexed (e.g. time is a good one), and match up the two sets using the intersection function within MATLAB. The data sets (i.e. each are N x 2 in dimension) do NOT have to be equal dimensions (courtesy of ?intersect?) or linear in increments.

One important note: this is a parametric test. When using mean and standard deviation statistics, the distributions of the data should be tested. However, I wanted to keep this a stand alone script so no qqplots, Mann-Whitney, etc. are called within this function.

For convenience, I?ve also posted a nashsutcliffe function for people who don?t like my derivation. Both these functions submitted are not much more than a novelty given the simplistic nature of the statistic, but what the heck, I needed to create this so why not post it. And my plug on a highly valuable statistic I submitted a while ago, is a non-parametric trend test, the Mann-Kendall Tau-b (named ktaub.m in the Earth Sciences category). Besides the dire need for such a statistic in MATLAB, the design has some elegance in it.

Cite As

Jeff Burkey (2024). Estimating a models skill of predictability (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2006b
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!
Version Published Release Notes

I updated the Summary. Somehow, when I submitted this script, my browser filled in the Summary with a previous submission ktaub.m. Sorry about any confusion people may have had.