Assumes the support is a contiguous interval that has operations for retrieving the lower and upper bounds.

# S3 method for class 'univariate_dist'
expectation(x, g, ..., control = list())

Arguments

x

The distribution object.

g

The function to take the expectation of.

...

Additional arguments to pass into g.

control

An (optional) list of control parameters for integrate or expectation_data (if x is not continuous)

Value

The expected value (numeric scalar), or the full integrate() result if compute_stats = TRUE.

Examples

x <- normal(3, 4)
# E[X] for Normal(3, 4) is 3
expectation(x, function(t) t)
#> [1] 3

# E[X^2] for Exp(1) is 2
expectation(exponential(1), function(t) t^2)
#> [1] 2