rmse {hydroGOF} | R Documentation |
Root Mean Square Error (RMSE) between sim
and obs
, in the same units of sim
and obs
, with treatment of missing values.
RMSE gives the standard deviation of the model prediction error. A smaller value indicates better model performance.
rmse(sim, obs, ...) ## Default S3 method: rmse(sim, obs, na.rm=TRUE, ...) ## S3 method for class 'data.frame' rmse(sim, obs, na.rm=TRUE, ...) ## S3 method for class 'matrix' rmse(sim, obs, na.rm=TRUE, ...) ## S3 method for class 'zoo' rmse(sim, obs, na.rm=TRUE, ...)
sim |
numeric, zoo, matrix or data.frame with simulated values |
obs |
numeric, zoo, matrix or data.frame with observed values |
na.rm |
a logical value indicating whether 'NA' should be stripped before the computation proceeds. |
... |
further arguments passed to or from other methods. |
rmse = sqrt( mean( (sim - obs)^2, na.rm = TRUE) )
Root mean square error (rmse) between sim
and obs
.
If sim
and obs
are matrixes, the returned value is a vector, with the RMSE between each column of sim
and obs
.
obs
and sim
has to have the same length/dimension
The missing values in obs
and sim
are removed before the computation proceeds, and only those positions with non-missing values in obs
and sim
are considered in the computation
Mauricio Zambrano Bigiarini <mzb.devel@gmail.com>
http://en.wikipedia.org/wiki/Root_mean_square_deviation
obs <- 1:10 sim <- 1:10 rmse(sim, obs) obs <- 1:10 sim <- 2:11 rmse(sim, obs) ################## # Loading daily streamflows of the Ega River (Spain), from 1961 to 1970 data(EgaEnEstellaQts) obs <- EgaEnEstellaQts # Generating a simulated daily time series, initially equal to the observed series sim <- obs # Computing the root mean squared error for the "best" (unattainable) case rmse(sim=sim, obs=obs) # Randomly changing the first 2000 elements of 'sim', by using a normal distribution # with mean 10 and standard deviation equal to 1 (default of 'rnorm'). sim[1:2000] <- obs[1:2000] + rnorm(2000, mean=10) # Computing the new root mean squared error rmse(sim=sim, obs=obs)