These functions calculate the arithmetic and geometric mean of the weight for each class. geometric_mean
and
arithmetic_mean
return a numeric
vector of the same length as w
which stores the averaged weight for each
observation. geometric_mean_reference
returns the same value by reference, i.e. the input value w
gets
overwritten by the updated weights. See examples.
geometric_mean_reference(w, classes)
w | An numeric vector. All entries should be positive. |
---|---|
classes | A factor variable. Must have the same length as |
if (FALSE) { ## create random data nobs <- 10 classLabels <- letters[1:3] dat = data.frame( weight = exp(rnorm(nobs)), household = factor(sample(classLabels, nobs, replace = TRUE)) ) dat ## calculate weights with geometric_mean geom_weight <- geometric_mean(dat$weight, dat$household) cbind(dat, geom_weight) ## calculate weights with arithmetic_mean arith_weight <- arithmetic_mean(dat$weight, dat$household) cbind(dat, arith_weight) ## calculate weights "by reference" geometric_mean_reference(dat$weight, dat$household) dat }