嗨,我是R和这个论坛的新手。 我和a previous poster有同样的问题,但我的答案没有得到解决。当我尝试使用包lme4和中介运行多级中介模型时,我收到消息:“中介模型尚未实现”。
我的数据:
data.frame': 25383 obs. of 115 variables:
$ PID : num 1 1 1 1 1 1 1 1 1 1 ...
$ T0_AGE : num 66.6 79.7 85.6 87 79.9 67.4 80 72 80.1
68$ T0_ASEXE : Factor w/ 2 levels "Male","Female": 1 1...
$ T0_ALIVING_R : num 0 0 0 0 1 0 0 0 1 0 ...
$ T0_educationcat : Factor w/ 3 levels "high","middle",..
$ FI_morbidity_corrected : num 0.0625 0 0.125 0.0625 0.0625 0.125 ……
$ FI_SRH : num 0.5 0.375 0.75 0.625 0.375…."
我想看看FI_morbidity_corrected
如何调解T0_educationcat
和FI_SRH
之间的关系。我正在为PID
(项目ID)指定随机截距,因为数据聚集在不同的研究/项目中。我正在控制混淆因素T0_ASEXE + T0_AGE + T0_ALIVING_R
med.fit <- lmer(FI_morbidity_corrected~T0_educationcat + T0_ASEXE + T0_AGE +
T0_ALIVING_R + (1|PID),data=topicsmds)
out.fit <- lmer(FI_SRH~FI_morbidity_corrected + T0_educationcat + T0_ASEXE +
T0_AGE + T0_ALIVING_R + (1|PID),data=topicsmds)
这有效,但随后:
med23.out <- mediate(med.fit, out.fit, treat = "T0_educationcat", mediator =
"FI_morbidity_corrected", control.value = "high", treat.value = "middle",
sims = 100)
summary(med23.out)
和
med24.out <- mediate(med.fit, out.fit, treat = "T0_educationcat", mediator =
"FI_morbidity_corrected", control.value = "high", treat.value = "low", sims
= 100)
summary(med24.out)
给我错误:
中介模型尚未实施
我按照建议使用library(lme4)
加载了lme4 pakage,但仍然出现此错误。
inherits(mediatorModel, "merMod")
返回TRUE
getCall(mediatorModel)[[1]]
返回lme4 :: lmer
谢谢!
答案 0 :(得分:1)
您是否正在加载包lmerTest
?如果是这样,class(med.fit[[1]])
会返回merModLmerTest
而不是lmerMod
- 但是调解包需要后者。卸载lmerTest
可以解决问题。