r - svyby 比例的置信区间

标签 r survey

是否存在创建置信区间的现有函数
来自 svyby比例对象(在我的例子中是 survey 包中二进制项的交叉表)。我经常比较各组之间的比例,如果有一个可以提取置信区间的函数(使用调查函数 svyciprop 而不是 confint )会非常方便。下面的示例显示了我想要实现的目标。

加载数据

library(survey)
library(weights)
data(api)
apiclus1$both<-dummify(apiclus1$both)[,1]#Create dummy variable
dclus1<-svydesign(id=~dnum, weights=~pw, data=apiclus1, fpc=~fpc)

创建一个 svyby 对象,该对象比较 stype 中变量“两者”的比例
b<-svyby(~both, ~stype, dclus1, svymean)
confint(b)#This works, but svyciprop is best in  other cases, especially when proportion is close to 0 or 1
svyciprop(b)#This requires that you specify each level and a design object

是否可以创建一个函数(例如 byCI(b,method="likelihood") 其实现与 confint(b) 相同但使用 svyciprop ?它基本上必须通过 svyby 对象的每个级别并创建一个置信区间。我的尝试一直失败到现在。

可能有另一种解决方法,但我喜欢使用 svyby()因为它快速而直观。

最佳答案

svyby()有一个 vartype=参数来指定您希望如何指定采样不确定性。使用 vartype="ci"获得置信区间,例如

svyby(~I(ell>0),~stype,design=dclus1, svyciprop,vartype="ci",method="beta")

很容易检查这是否与手动完成每个级别相同,例如,
confint(svyciprop(~I(ell>0), design=subset(dclus1,stype=="E"),method="beta"))

关于r - svyby 比例的置信区间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14112508/

相关文章:

r 结合 ggRadar 和 facet_wrap

r - 带有示例代码的 Jupyter R Plotly 404 错误

sql - 在 SQL 中,如何计算列中值的数量,然后将其旋转以使该列成为行?

r - (RIM) R 中的加权样本

r - 如何模拟外部+列表?

r - 将制表符分隔的数据解析为 R data.table/data.frame 时如何排除某些行?

R - 故意屏蔽包函数中的函数?

html - 并排定位标签和输入

r - 在将字符日期转换为 R 调查数据中的可用日期时处理 2000 与 1900

sharepoint - Sharepoint调查:从Lists Web服务中获取调查信息时,如何识别问题字段?