Skip to contents

Compute weighted moments

Usage

weighted_moments(x, w, n = 2L, center = TRUE)

Arguments

x

Observations

w

Case weights (optional)

n

Number of moments to calculate

center

Calculate centralized moments (default) or noncentralized moments, i.e. E((X - E(X))^k) or E(X^k).

Value

A vector of length n where the kth entry is the kth weighted moment of x with weights w. If center is TRUE the moments are centralized, i.e. E((X - E(X))^k). The first moment is never centralized. The moments are scaled with 1 / sum(w), so they are not de-biased.

e.g. the second central weighted moment weighted_moment(x, w)[2L]

is equal to var(rep(x, w)) * (sum(w) - 1) / sum(w)

for integer w

See also

Other weighted statistics: weighted_quantile(), weighted_tabulate()

Examples

weighted_moments(rexp(100))
#> [1] 0.9877458 1.2957378
weighted_moments(c(1, 2, 3), c(1, 2, 3))
#> [1] 2.3333333 0.5555556
c(mean(rep(1:3, 1:3)), var(rep(1:3, 1:3)) * 5 / 6)
#> [1] 2.3333333 0.5555556