Estimate the margin of error for an overall survey or a single question
esti_moe.Rd
For the overall survey: given weights and/or a sample size, the maximum margin of error gives us the upper bound on the margin of error for all y/n questions across the entire survey – by estimating it for a hypothetical y/n question with 50/50 (the inherently most uncertain population estimand).
Arguments
- .data
data frame to optionally pipe in
dplyr
-style (see example).- weights
vector of sample weights used to adjust the sample (optional if
n
orx
is specified).- n
the sample size of the suvrey (not needed if
weights
orx
is specified).- x
the particular question to estimate margin of error for (if not specified, estimate the survey's MOE instead).
- conf
the level of statistical confidence to estimate the error.
Value
The survey margin of error (MOE) or "modeled error" for the overall survey or question of interest.
Details
For a single question: given a vector of sample responses and/or weights, the margin of error estimates the margin of error by plugging into known quantiles of the asymptotic sampling distribution.
Estimates from this asymptotic formula tend to be smaller than
using the simulated margin of error (sim_modeled_error
) as it assumes
all our survey's questions follow an asymptotic normal distribution
(i.e. a large sample of independent observations).
For non-probability surveys without design weights, it is recommended to use `sim_modeled_error`.
Examples
data(ev22)
if (FALSE) { ## not run
# Unweighted maximum margin of error
esti_moe(n = nrow(ev22))
esti_moe(weights = rep(1, nrow(ev22)))
# Weighted maximum margin of error
esti_moe(weights = ev22$weight_genpop)
# Unweighted margin of error for specific question
esti_moe(x = ev22$ev_heard_1)
# Weighted margin of error for specific question
ev22 %>%
filter(!is.na(weight_genpop)) %>%
esti_moe(x = ev_heard_1, weights = weight_genpop)
}