Skip to contents

Provides an estimate for the proportion of cases of unknown eligibility that are eligible, as described by (Valliant et al. 2013) . The rate is typically (but not necessarily) calculated on the screener data or other sources depending on the type of survey, and approaches to calculating 'e' may therefore differ from one survey to the next.


eligibility_rate(x, weight = NULL)



a character vector of disposition outcomes (I, P, R, NC, O, UH, UO, U, or NE). Alternatively, a named vector/table of (weighted) disposition counts.


an optional numeric vector that specifies the weight of each element in 'x' if x is a character vector. If none is provided (the default), an unweighted estimate is returned.


The present implementation follows the default used in the Excel-based AAPOR Outcome Rate Calculator (Version 4.0, May, 2016) on the basis of known ineligibles being coded as "NE".

The eligibility rate (ELR) is defined as

  • ELR = (I + P + R + NC + O) / (I + P + R + NC + O + NE)


The American Association for Public Opinion Research (2016). “Standard Definitions: Final Dispositions of Case Codes and Outcome Rates for Surveys.” Valliant R, Dever JA, Kreuter F (2013). Practical Tools for Designing and Weighting Survey Samples, Statistics for Social and Behavioral Sciences. Springer New York.

See also


# load the outcomerate package

# Create a vector of survey dispositions
# I  = Complete interview
# P  = Partial interview
# R  = Refusal and break-off
# NC = Non-contact
# O  = Other
# UH = Unknown if household/occupied housing unit
# UO = Unknown, other
# NE = Not eligible
x <- c("I", "P", "I", "NE", "NC", "UH", "I", "R", "UO", "I", "O", "P", "I")

# calculate all rates, assume 80% of unknown cases are elligble
#>       ELR 
#> 0.9090909 

# calculate weighted rates
w <- runif(13, 0, 5)
eligibility_rate(x, weight = w)
#>       ELR 
#> 0.9636453 

# alternatively, provide input as counts
freq <- c(I = 6, P = 2, NC = 3, NE = 1)
#>       ELR 
#> 0.9166667