如何从svyciprop对象中提取属性值?

时间:2014-12-23 11:44:28

标签: r survey confidence-interval

如何从下面的svyciprop对象中提取属性到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")

印刷

prop.ci

收率:

> 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%"

2 个答案:

答案 0 :(得分:5)

您可以使用以下命令从对象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 

如果要分别访问置信区间的值,可以使用向量索引:

ci <- attr(prop.ci, "ci")
ci[1]
#         2.5% 
# 0.0006639212 
ci[2]
#     97.5% 
# 0.1077784 

答案 1 :(得分:2)

如果它更容易记住..

# 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 ]