我正在尝试使用调查包计算一部分穷人。 所以我创建了一个子集,其中包含总数的变量(一个)并称为n(我不确定它是否是正确的方法)。 所以,我有:
str(base2015$q)
num [1:117939] 0 0 0 0 0 0 0 0 0 0 ...
str(base2015$one)
int [1:117939] 1 1 1 1 1 1 1 1 1 1 ...
和分类变量区域。 (是我的svydesign) 我尝试使用像这样的svyratio函数,但他给我所有数据集的结果,我希望按子组(区域)。我希望每个地区都有这个(见图) proportion of poor
svyratio(numerator=~q,
~one,
design = y, separate=FALSE, na.rm=TRUE,
formula, covmat=FALSE, deff=FALSE)
我还尝试使用群体创建子集,然后使用svyby:
n <- subset( y , one == 1 )
View(n)
svyby( ~ q , ~ region , n , vartype=c("se","ci","cv"), svytotal )
svyby( ~ q , ~ region , n , vartype=c("se","ci","cv"), svymean )
region q se ci_l ci_u cv
1 1 NA NaN NaN NaN NaN
2 2 NA NaN NaN NaN NaN
3 3 NA NaN NaN NaN NaN
4 4 NA NaN NaN NaN NaN
5 5 NA NaN NaN NaN NaN
他给了我这个。我不知道我做错了什么。
有人可以帮我这个吗?
答案 0 :(得分:0)
data(scd)
scddes<-svydesign(data=scd, prob=~1, id=~ambulance, strata=~ESA,nest=TRUE, fpc=rep(5,6))
svyby( ~ alive , denominator = ~ arrests , by = ~ ambulance , scddes , svyratio )
# which missings do you want to remove? read `?svyby`
svyby( ~ alive , denominator = ~ arrests , by = ~ ambulance , scddes , svyratio , na.rm = TRUE , na.rm.by = TRUE , na.rm.all = TRUE )