Confidence intervals for proportions
Description
Computes confidence intervals for proportions using methods that may be
more accurate near 0 and 1 than simply using confint(svymean())
.
Usage
1 2 
Arguments
formula 
Model formula specifying a single binary variable 
design 
survey design object 
method 
See Details below. Partial matching is done on the argument. 
level 
Confidence level for interval 
df 
denominator degrees of freedom, for all methods except

... 
For 
Details
The "logit"
method fits a logistic regression model and computes a
Waldtype interval on the logodds scale, which is then transformed to
the probability scale.
The "likelihood"
method uses the (RaoScott) scaled chisquared distribution
for the loglikelihood from a binomial distribution.
The "asin"
method uses the variancestabilising transformation
for the binomial distribution, the arcsine square root, and then
backtransforms the interval to the probability scale
The "beta"
method uses the incomplete beta function as in
binom.test
, with an effective sample size based on the
estimated variance of the proportion. (Korn and Graubard, 1998)
The "mean"
method is a Waldtype interval on the probability
scale, the same as confint(svymean())
All methods undercover for probabilities close enough to zero or one,
but "beta"
, "likelihood"
and "logit"
are noticeably
better than the other two. None of the methods will work when the
observed proportion is exactly 0 or 1.
The confint
method extracts the confidence interval; the
vcov
and SE
methods just report the variance or standard
error of the mean.
Value
The point estimate of the proportion, with the confidence interval as an attribute
References
Rao, JNK, Scott, AJ (1984) "On Chisquared Tests For Multiway Contingency Tables with Proportions Estimated From Survey Data" Annals of Statistics 12:4660.
Korn EL, Graubard BI. (1998) Confidence Intervals For Proportions With Small Expected Number of Positive Counts Estimated From Survey Data. Survey Methodology 23:193201.
See Also
svymean
Examples
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20  data(api)
dclus1<svydesign(id=~dnum, fpc=~fpc, data=apiclus1)
svyciprop(~I(ell==0), dclus1, method="li")
svyciprop(~I(ell==0), dclus1, method="lo")
svyciprop(~I(ell==0), dclus1, method="as")
svyciprop(~I(ell==0), dclus1, method="be")
svyciprop(~I(ell==0), dclus1, method="me")
## reproduces Stata svy: mean
svyciprop(~I(ell==0), dclus1, method="me", df=degf(dclus1))
## reproduces Stata svy: prop
svyciprop(~I(ell==0), dclus1, method="lo", df=degf(dclus1))
rclus1<as.svrepdesign(dclus1)
svyciprop(~I(emer==0), rclus1, method="li")
svyciprop(~I(emer==0), rclus1, method="lo")
svyciprop(~I(emer==0), rclus1, method="as")
svyciprop(~I(emer==0), rclus1, method="be")
svyciprop(~I(emer==0), rclus1, method="me")

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker. Vote for new features on Trello.