Skip to contents

Calculate the symmetric mean absolute percentage error of a numeric vector.

Usage

smape_vec(truth, estimate, na_rm = TRUE)

Arguments

truth

Numeric vector containing the actual values.

estimate

Numeric vector containing the forecasts.

na_rm

Logical value. If TRUE, missing values are removed.

Value

A numeric value.

Details

smape_vec() computes the symmetric mean absolute percentage error: abs(estimate - truth) / ((abs(truth) + abs(estimate)) / 2) * 100.

This metric is undefined when both truth and estimate are zero and may return NaN in such cases.

Examples

truth <- c(10, 20, 40)
estimate <- c(8, 22, 30)

smape_vec(truth, estimate)
#> [1] 20.10582

truth_na <- c(10, 20, NA)
estimate_na <- c(8, 22, 25)
smape_vec(truth_na, estimate_na)
#> [1] 15.87302