在r里面做lmm,有三个预测变量,都是有序变量。得到的结果如下,请问这样可否继续去掉一些预测变量(比如CD不显著,将它从模型中删掉),继续优化模型
library(lmerTest)
m.full <- lmer(AC~DTD*CT*CD+(1+DTD+CT||ID),data = mydata)
> anova(m.full)
Type III Analysis of Variance Table with Satterthwaite's method
Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
DTD 0.134827 0.134827 1 412.26 54.8593 7.374e-13 ***
CT 0.000046 0.000046 1 386.53 0.0189 0.89079
CD 0.005720 0.005720 1 380.41 2.3275 0.12793
DTD:CT 0.000924 0.000924 1 380.41 0.3759 0.54018
DTD:CD 0.010289 0.010289 1 380.41 4.1864 0.04144 *
CT:CD 0.011917 0.011917 1 380.41 4.8491 0.02826 *
DTD:CT:CD 0.017398 0.017398 1 380.41 7.0788 0.00813 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
问题其实就是lmm模型中固定效应怎么选择,可否根据全模型的结果一个一个删除不感兴趣的预测变量
引用 皆我百晓生 小程序回复内容作答:
对于LMM(线性混合模型)中的固定效应选择,可以根据全模型的结果逐一删除不感兴趣的预测变量,并比较删除前后的模型拟合优度(例如AIC、BIC等),以确定是否可以继续删除。一般来说,在删除一个预测变量后,如果模型的拟合优度没有显著下降,那么可以将其从模型中删除。
在你的示例中,你可以进行以下步骤来确定是否可以删除CD变量:
比较含有CD变量的全模型(m.full)和删除CD变量的简化模型(m.simplified)的拟合优度。你可以使用AIC、BIC等指标进行比较,较小的值表示更好的模型拟合。
m.simplified <- lmer(AC~DTD*CT+(1+DTD+CT||ID),data = mydata)
AIC(m.full)
AIC(m.simplified)
如果简化模型的拟合优度与全模型的拟合优度差距不显著,则说明CD变量对模型的解释效果较小,可以考虑删除。
anova(m.full, m.simplified)
进一步检查简化模型中的其他变量是否显著,并比较其解释效果,以确定是否需要进一步优化模型。
需要注意的是,对于有序变量,你可能还需要考虑其线性、二次或其他更适合的形式来建模,以充分利用变量之间的关系,并确保模型的合理性。
【以下回答由 GPT 生成】
要确定在LMM中哪些预测变量可以被去除以优化模型,我们可以使用逐步回归或模型比较的方法。下面是两种可能的方法:
逐步回归方法
step()
函数,逐步移除不显著的变量。首先,拟合全模型。library(lmerTest)
m.full <- lmer(AC ~ DTD * CT * CD + (1 + DTD + CT || ID), data = mydata)
step()
函数来选择变量。设置direction
参数为backward
,这样在每一步都会移除一个变量。m.step <- step(m.full, direction = "backward")
anova()
函数来比较完整模型和逐步回归模型的显著性。anova(m.full, m.step)
模型比较方法
drop1()
函数,逐个删除预测变量,并比较模型的准确性。首先,拟合全模型。library(lmerTest)
m.full <- lmer(AC ~ DTD * CT * CD + (1 + DTD + CT || ID), data = mydata)
drop1()
函数来删除一个变量,并比较模型的准确性,设置test
参数为"Chisq"
以进行卡方检验。drop_result <- drop1(m.full, test = "Chisq")
drop_result
以上方法可以帮助确定哪些预测变量可以从LMM中删除以优化模型。请注意,这里给出的方法仅供参考,具体的决策应该结合实际情况和领域知识进行。
【相关推荐】