inclusion_prob {sps} | R Documentation |
Calculate inclusion probabilities
Description
Calculate stratified (first-order) inclusion probabilities.
Usage
inclusion_prob(x, n, strata = gl(1, length(x)), alpha = 0.001, cutoff = Inf)
becomes_ta(x, alpha = 0.001, cutoff = Inf)
Arguments
x |
A positive and finite numeric vector of sizes for units in the population (e.g., revenue for drawing a sample of businesses). |
n |
A positive integer vector giving the sample size for each stratum,
ordered according to the levels of |
strata |
A factor, or something that can be coerced into one, giving the strata associated with units in the population. The default is to place all units into a single stratum. |
alpha |
A numeric vector with values between 0 and 1 for each stratum,
ordered according to the levels of |
cutoff |
A positive numeric vector of cutoffs for each stratum, ordered
according to the levels of |
Details
Within a stratum, the inclusion probability for a unit is given by
\pi = nx / \sum x
. These values can be greater
than 1 in practice, and so they are constructed iteratively by taking units
with \pi \geq 1 - \alpha
(from largest to smallest)
and assigning these units an inclusion probability of 1, with the remaining
inclusion probabilities recalculated at each step. If \alpha > 0
, then
any ties among units with the same size are broken by their position.
The becomes_ta()
function reverses this operations and finds the critical
sample size at which a unit enters the take-all stratum. This value is
undefined for units that are always included in the sample (because their
size exceeds cutoff
) or never included.
Value
inclusion_prob()
returns a numeric vector of inclusion probabilities for
each unit in the population.
becomes_ta()
returns an integer vector giving the sample size at which a
unit enters the take-all stratum.
See Also
sps()
for drawing a sequential Poisson sample.
Examples
# Make inclusion probabilities for a population with units
# of different size
x <- c(1:10, 100)
(pi <- inclusion_prob(x, 5))
# The last unit is sufficiently large to be included in all
# samples with two or more units
becomes_ta(x)
# Use the inclusion probabilities to calculate the variance of the
# sample size for Poisson sampling
sum(pi * (1 - pi))