# svyciprop: Confidence intervals for proportions In survey: Analysis of Complex Survey Samples

## 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``` ```svyciprop(formula, design, method = c("logit", "likelihood", "asin", "beta", "mean","xlogit"), level = 0.95, df=degf(design),...) ```

## 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 `"beta"`. Use `Inf` for confidence intervals based on a Normal distribution, and for `"likelihood"` and `"logit"` use `NULL` for the default method in glms (currently `degf(design)-1`, but this may be improved in the future) `...` For `"mean"` and `"asin"`, this is passed to `confint.svystat`

## Details

The `"logit"` method fits a logistic regression model and computes a Wald-type interval on the log-odds scale, which is then transformed to the probability scale.

The `"likelihood"` method uses the (Rao-Scott) scaled chi-squared distribution for the loglikelihood from a binomial distribution.

The `"asin"` method uses the variance-stabilising transformation for the binomial distribution, the arcsine square root, and then back-transforms 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 `"xlogit"` method uses a logit transformation of the mean and then back-transforms to the probablity scale. This appears to be the method used by SUDAAN and SPSS COMPLEX SAMPLES.

The `"mean"` method is a Wald-type interval on the probability scale, the same as `confint(svymean())`

All methods undercover for probabilities close enough to zero or one, but `"beta"`, `"likelihood"`, `"logit"`, 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 Chi-squared Tests For Multiway Contingency Tables with Proportions Estimated From Survey Data" Annals of Statistics 12:46-60.

Korn EL, Graubard BI. (1998) Confidence Intervals For Proportions With Small Expected Number of Positive Counts Estimated From Survey Data. Survey Methodology 23:193-201.

`svymean`, `yrbs`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22``` ```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") svyciprop(~I(ell==0), dclus1, method="xl") ## 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") ```