Difference between revisions of "Performance measures"
Jump to navigation
Jump to search
m |
|||
Line 28: | Line 28: | ||
The [http://en.wikipedia.org/wiki/R-squared coefficient of determination] is the square of the Pearson's product-moment correlation coefficient. Note that the COD only evaluates linear relations between variables! | The [http://en.wikipedia.org/wiki/R-squared coefficient of determination] is the square of the Pearson's product-moment correlation coefficient. Note that the COD only evaluates linear relations between variables! | ||
− | COD <- cor(Qobs,Qsim, use="complete.obs")^2 | + | COD <- cor(Qobs, Qsim, use="complete.obs")^2 |
Line 35: | Line 35: | ||
The [http://en.wikipedia.org/wiki/Root_mean_square_deviation root mean squared error] is the square root of the variance: | The [http://en.wikipedia.org/wiki/Root_mean_square_deviation root mean squared error] is the square root of the variance: | ||
− | RMSE <- cov(Qobs,Qsim, use="complete.obs")^0.5 | + | RMSE <- cov(Qobs, Qsim, use="complete.obs")^0.5 |
Revision as of 17:48, 3 August 2008
Introduction
Here is a selection of measures you can use for assessing the performance of your model.
Nash-Sutcliffe efficiency
The Nash-Sutcliffe efficiency is a widely used performance measure based on the error variance. It is implemented as NSeff() in the topmodel package. It takes two vectors, containing the simulated (Qsim) and observed (Qobs) discharge:
Eff <- NSeff(Qobs,Qsim)
The underlying code is very simple:
NSeff <- function (Qobs, Qsim){ Qsim <- Qsim[!is.na(Qobs)] Qobs <- Qobs[!is.na(Qobs)] Qobs <- Qobs[!is.na(Qsim)] Qsim <- Qsim[!is.na(Qsim)] NS <- 1 - (sum((Qobs - Qsim)^2)/sum((Qobs - mean(Qobs))^2)) return(NS) }
Coefficient of determination
The coefficient of determination is the square of the Pearson's product-moment correlation coefficient. Note that the COD only evaluates linear relations between variables!
COD <- cor(Qobs, Qsim, use="complete.obs")^2
Root mean squared error
The root mean squared error is the square root of the variance:
RMSE <- cov(Qobs, Qsim, use="complete.obs")^0.5