Skip to contents

It estimates the refined index of agreement (d1r) following Willmott et al. (2012).

Usage

d1r(data = NULL, obs, pred, tidy = FALSE, na.rm = TRUE)

Arguments

data

(Optional) argument to call an existing data frame containing the data.

obs

Vector with observed values (numeric).

pred

Vector with predicted values (numeric).

tidy

Logical operator (TRUE/FALSE) to decide the type of return. TRUE returns a data.frame, FALSE returns a list; Default : FALSE.

na.rm

Logic argument to remove rows with missing values (NA). Default is na.rm = TRUE.

Value

an object of class numeric within a list (if tidy = FALSE) or within a data frame (if tidy = TRUE).

Details

Similar to d, and d1, the d1r index it is a normalized, dimensionless metric that tests general agreement. The difference is that d1r modifies the denominator of the formula (potential error), normalizing the mean absolute error (numerator) by two-times the mean absolute deviation of observed values. It is bounded between 0 and 1. The disadvantage is that d1r is an asymmetric index, that is, dependent to the orientation of predicted and observed values. For the formula and more details, see online-documentation

References

Willmott et al. (2012). A refined index of model performance. Int. J. Climatol. 32, 2088–2094. doi:10.1002/joc.2419

Examples

# \donttest{
set.seed(1)
X <- rnorm(n = 100, mean = 0, sd = 10)
Y <- rnorm(n = 100, mean = 0, sd = 9)
d1r(obs = X, pred = Y)
#> $d1r
#> [1] 0.3062485
#> 
# }