Learn R Programming

scoringfunctions (version 1.1)

nmoment_sf: \(n\)-th moment scoring function

Description

The function nmoment_sf computes the \(n\)-th moment scoring function, when \(y\) materialises, and \(\textnormal{E}_F[Y^n]\) is the predictive \(n\)-th moment.

The \(n\)-th moment scoring function is defined by eq. (22) in Gneiting (2011) by setting \(r(t) = t^n\), \(s(t) = 1\), \(\phi(t) = t^2\) and removing all terms that are not functions of \(x\).

Usage

nmoment_sf(x, y, n)

Value

Vector of \(n\)-th moment losses.

Arguments

x

Predictive \(n\)-th moment. It can be a vector of length \(m\) (must have the same length as \(y\)).

y

Realisation (true value) of process. It can be a vector of length \(m\) (must have the same length as \(x\)).

n

\(n\)) is the moment order. It can be a vector of length \(m\) (must have the same length as \(x\)).

Details

The \(n\)-th moment scoring function is defined by:

$$ S(x, y, n) := -x^2 - 2 x (y^n - x) $$

Domain of function:

$$x \in \mathbb{R}$$

$$y \in \mathbb{R}$$

$$n \in \mathbb{N}$$

References

Gneiting T (2011) Making and evaluating point forecasts. Journal of the American Statistical Association 106(494):746--762. tools:::Rd_expr_doi("10.1198/jasa.2011.r10138").

Examples

Run this code
# Compute the n-th moment scoring function.

df <- data.frame(
    y = rep(x = 2, times = 6),
    x = c(1, 2, 3, 1, 2, 3),
    n = c(2, 2, 2, 3, 3, 3)
)

df$nmoment_penalty <- nmoment_sf(x = df$x, y = df$y, n = df$n)

print(df)

Run the code above in your browser using DataLab