This is a basic weighted standard deviation function, mainly for internal use with sumtable.

weighted.sd(x, w, na.rm = TRUE, type = "frequency")

Arguments

x

A numeric vector.

w

A vector of weights. Negative weights are not allowed.

na.rm

Set to TRUE to remove indices with missing values in x or w.

type

The type of weights to use. The default is 'frequency', which is applied when the weights represent frequencies. Also supports 'precision' which is to be used when the weights represent precision.

Examples

x <- c(1, 1, 2, 3, 4, 4, 4)
w <- c(4, 1, 3, 7, 0, 2, 5)
weighted.sd(x, w)
#> [1] 1.243828