How can I extract attributes from svyciprop object below to a data.frame:
library(survey)
api <- read.dta(file = "http://www.ats.ucla.edu/stat/stata/library/apipop.dta")
data(api)
dclus1 <- svydesign(id=~dnum, fpc=~fpc, data=apiclus1)
prop.ci <- svyciprop(~I(ell==0), dclus1, method="li")
printing
prop.ci
Yields:
> prop.ci
2.5% 97.5%
I(ell == 0) 0.021858 0.000664 0.11
str(prop.ci)
> str(prop.ci)
Class 'svyciprop' atomic [1:1] 0.0219
..- attr(*, "var")= num [1, 1] 0.000512
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr "as.numeric(I(ell == 0))"
.. .. ..$ : chr "as.numeric(I(ell == 0))"
..- attr(*, "ci")= Named num [1:2] 0.000664 0.107778
.. ..- attr(*, "names")= chr [1:2] "2.5%" "97.5%"
You can use the following commands to extract the proportion and the confidence interval from the object prop.ci
:
# the proportion
as.vector(prop.ci)
# [1] 0.02185792
# the confidence interval
attr(prop.ci, "ci")
# 2.5% 97.5%
# 0.0006639212 0.1077784084
If you want to access the values of the confidence interval separately, you can use vector indexing:
ci <- attr(prop.ci, "ci")
ci[1]
# 2.5%
# 0.0006639212
ci[2]
# 97.5%
# 0.1077784
in case it's easier to remember..
# everything
prop.ci
# extract just the proportion
prop.ci[ 1 ]
# extract the confidence interval
confint( prop.ci )
# lower bound
confint( prop.ci )[ 1 ]
# upper bound
confint( prop.ci )[ 2 ]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With