Computes a weighted variance / standard deviation of a numeric vector or across rows or columns of a matrix.
weightedVar(x, w = NULL, idxs = NULL, na.rm = FALSE, center = NULL, ...)weightedSd(...)
rowWeightedVars(x, w = NULL, rows = NULL, cols = NULL, na.rm = FALSE,
...)
colWeightedVars(x, w = NULL, rows = NULL, cols = NULL, na.rm = FALSE,
...)
rowWeightedSds(x, w = NULL, rows = NULL, cols = NULL, na.rm = FALSE,
...)
colWeightedSds(x, w = NULL, rows = NULL, cols = NULL, na.rm = FALSE,
...)
a vector of weights the same length as x giving the weights
to use for each element of x. Negative weights are treated as zero
weights. Default value is equal weight to all values.
Not used.
Returns a numeric scalar.
Missing values are dropped at the very beginning,
if argument na.rm is TRUE, otherwise not.
The estimator used here is the same as the one used by the "unbiased"
estimator of the Hmisc package. More specifically,
weightedVar(x, w = w) == Hmisc::wtd.var(x, weights = w),
For the non-weighted variance, see var.