问题描述
我有两项调查的纵向数据,我想进行事前分析。通常,我会使用 survey::svyglm()
或 svyVGAM::svy_vglm
(对于多项族)来包含采样权重,但这些函数不考虑随机效应。另一方面,lme4::lmer
考虑了重复测量,但不考虑采样权重。
对于持续的结果,我明白我可以做到
w_data_wide <- svydesign(ids = ~1,data = data_wide,weights = data_wide$weight)
svyglm((post-pre) ~ group,w_data_wide)
并得到与如果我可以将 lmer(outcome ~ grouP*time + (1|id),data_long)
与权重一起使用时得到的估计值[如果我错了,请纠正我]。
但是,对于分类变量,我不知道如何进行分析。 WeMix::mix()
有一个参数 weights,但我不确定它是否将它们视为采样权重。不过这个函数还是不能支持多项族。
所以,继续:您能否启发我如何对具有 2 个或更多级别的分类结果进行事前测试分析?任何有关 R 中的包/函数以及如何使用/编写它们的提示将不胜感激。
我在下面给出了一些具有二项式和多项式结果的数据集:
library(data.table)
set.seed(1)
data_long <- data.table(
id=rep(1:5,2),time=c(rep("Pre",5),rep("Post",5)),outcome1=sample(c("Yes","No"),10,replace=T),outcome2=sample(c("Low","Medium","High"),outcome3=rnorm(10),group=rep(sample(c("Man","Woman"),5,weight=rep(c(1,0.5,1.5,0.75,1.25),2)
)
data_wide <- dcast(data_long,id~time,value.var = c('outcome1','outcome2','outcome3','group','weight'))[,`:=` (weight_Post = NULL,group_Post = NULL)]
编辑
正如我在下面的评论中所说,我一直使用 lmer
和 glmer
以及用于计算权重的变量作为预测变量。碰巧 glmer
返回了很多问题(收敛、高特征值...),所以我再看看这篇文章和其他人中的@ThomasLumley 答案(https://stat.ethz.ch/pipermail/r-help/2012-June/315529.html | https://stats.stackexchange.com/questions/89204/fitting-multilevel-models-to-complex-survey-data-in-r) .
所以,我现在的问题是,是否可以将参与者 ID 用作 svydesign
library(survey)
w_data_long_cluster <- svydesign(ids = ~id,data = data_long,weights = data_long$weight)
summary(svyglm(factor(outcome1) ~ grouP*time,w_data_long_cluster,family="quasibinomial"))
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.875e+01 1.000e+00 18.746 0.0339 *
groupWoman -1.903e+01 1.536e+00 -12.394 0.0513 .
timePre 5.443e-09 5.443e-09 1.000 0.5000
groupWoman:timePre 2.877e-01 1.143e+00 0.252 0.8431
并且仍然将 groupWoman:timePre
解释为不同性别组之间随着时间的推移结果的平均变化/改善率的差异,就好像我使用混合模型将参与者作为随机效应一样。
再次感谢您!
解决方法
具有 svyglm
的线性模型不会给出与 lme4::lmer
相同的参数估计。不过,如果模型被正确指定,它确实估计与 lme4::lmer
相同的参数。
如您所见,具有 svyglm
或 svy_vglm
的广义线性模型不会估计与 lme4::glmer
相同的参数。但是,它们确实估计了非常好的回归参数,如果您对方差分量或估计已实现的随机效应 (BLUP) 不是特别感兴趣,我建议您只使用 svy_glm
。
如果您有用于模型的随机效应版本的非调查软件,则另一个选择是使用它。如果您将权重调整为样本大小的总和,并且如果设计中的所有聚类都是通过模型中的随机效应建模的,那么您将至少获得有效推理的合理近似值。例如,这就是我所看到的推荐用于贝叶斯调查建模的内容。